Мазмұны:

Ішкі/сыртқы USB термометрі (немесе 'Менің алғашқы USB құрылғысы'): 4 қадам (суреттермен)
Ішкі/сыртқы USB термометрі (немесе 'Менің алғашқы USB құрылғысы'): 4 қадам (суреттермен)

Бейне: Ішкі/сыртқы USB термометрі (немесе 'Менің алғашқы USB құрылғысы'): 4 қадам (суреттермен)

Бейне: Ішкі/сыртқы USB термометрі (немесе 'Менің алғашқы USB құрылғысы'): 4 қадам (суреттермен)
Бейне: Простой пошаговый домашний инкубатор 2024, Шілде
Anonim
Ішкі/сыртқы USB термометрі (немесе «Менің алғашқы USB құрылғысы»)
Ішкі/сыртқы USB термометрі (немесе «Менің алғашқы USB құрылғысы»)

Бұл PIC 18Fs USB перифериялық құрылғысын көрсететін қарапайым дизайн. 18F4550 40 істікшелі чиптер үшін көптеген мысалдар бар, бұл конструкция 18F2550 28 істікшелі кіші нұсқасын көрсетеді. ПХД беттік монтаждау бөлшектерін қолданады, бірақ барлық компоненттер саңылаулы нұсқаларда қол жетімді. Мен беттік бөлшектерді қолданамын, себебі тақтаны тесіксіз жасауға болады. Ақырғы нәтиже - ішкі/сыртқы температураны өлшейтін шағын USB перифериялық құрылғысы. Деректер компьютерге виртуалды сериялық порт арқылы қол жетімді. Мысалда температура датчиктері пайдаланылады, бірақ басқа аналогты датчиктерді қосуға болады. PS Менің тіркеушідегі деректердің тірі графигін мына жерден қараңыз: https://www.syndicit.com/stream/ian/nieuwemarkt/indoor_temperature/? Format = график

1 -қадам: Дизайнға шолу

Дизайнға шолу
Дизайнға шолу
Дизайнға шолу
Дизайнға шолу
Дизайнға шолу
Дизайнға шолу

Қажетті PIC компоненттері

Бұл USB перифериялық құрылғысы 28 істікшелі PIC 18F2550 -ге негізделген. Бұл чипте толық жылдамдықты USB интерфейсі үшін қажет нәрсенің бәрі бар. Қуат пен жер арасындағы 0,1 уф конденсатор PIC -ті қуат көзінен ажыратады. 20 МГц кристалл (48 МГц ішкі сағатты генерациялау үшін қолданылады) және екі 27pf конденсатор. MCLR түйреуішіне дейін қуаттан 10K резистор. Мен резистор мен қуат арасындағы 1n4148 эквивалентті диодты қостым, осылайша бағдарламалау кезінде MCLR -ге орналастырылған 13+вольт тақтадағы басқа компоненттерді зақымдамайды. ICSP тақырыбы (5 түйреуіш) құрылғыны бағдарламалау және күйін келтіру үшін қолданылады. Қажетті USB заттары «B» стиліндегі USB әйел ұясы. Ішкі USB кернеу реттегіші үшін 220nf-440nf сыйымдылық қажет. Мен екі 0.1uf конденсаторды қолданамын (ажырату үшін қолданылатын сияқты) проблемасыз. USB қосылу күйін көрсету үшін 330 Ом ток шектеу резисторы бар жарық диоды қолданылады. Қажетті сенсорлық материалдар мен ішкі температура сенсоры ретінде TC1047A микрочипінің температура сенсорын қолдандым. Ол физикалық түрде тақтаға дәнекерленген - бұл оның бөлме температурасынан бірнеше градусқа ыстық болуына әкеледі. Сыртқы температура датчигін қосу үшін тақырып қолданылады (TO-92 нұсқасы TC1047a). Қосымша 0.1 уф конденсатор тақтаның қалған бөлігінен ұзын сымды ажыратуға көмектеседі. USB кернеуінің деңгейлері аналогты датчиктерден температураны дәл өлшеуге және есептеуге жеткіліксіз. Сыртқы кернеу сілтемесі (MCP1525, 2,5 вольт) қолданылады. Кернеу анықтамасы 1ф -ден 10уф -қа дейінгі конденсаторды қажет етеді. Бұл конденсаторсыз кернеу анықтамасы жұмыс істемейді.

2 -қадам: микробағдарлама

Микробағдарлама сериялық портты эмуляциялау үшін CDC USB класын пайдаланады. Құрылғы дербес компьютерде виртуалды порт ретінде пайда болады. Микробағдарлама үш бөлімге бөлінеді: 1. USB драйвері құрылғыны компьютерде санауға және COM портын эмуляциялауға қамқорлық жасайды. 2. Қызмет көрсету режимі температура мәндерін кезекпен оқиды және оларды оқылатын форматқа түрлендіреді. Бұл әрекеттердің екеуін де бірден жасау USB құрылғысының компьютермен байланысын жоғалтуына әкелді (уақытша іліну). Айнымалы нүкте мәндерін түрлендіруден кейін қызмет цикліндегі жолға түрлендіру байланыс мәселесін шешті. Бірнеше шаралар үтірмен бөлінеді, жолдар нөлдік таңбамен тоқтатылады (он алтылық 0x00) Демонстрациялық бағдарламалық қамтамасыз ету келесі командаларды қабылдайды: Он алтылық мәні 0x00 Ішкі температура (борттық сенсор) 0x01 Сыртқы температура (сыртқы тақырып) 0x02 Екі температура (үтір) бөлінген) Температура 2,5 вольтты сілтеме мен Microchip TC1047A ығысу мен көлбеу негізінде есептеледі. Басқа температура сенсорларының сипаттамалары әр түрлі болуы мүмкін. TC1047A мәліметтер кестесі мына жерде: https://ww1.microchip.com/downloads/kz/DeviceDoc/21498c.pdf https://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1406&dDocName=en010014&part=SW006011 Нақты USB микробағдарламасын Microchip қамтамасыз етеді. Бастапқы орта мына жерде қол жетімді: https://www.microchip.com/stellent/idcplg? IdcService = SS_GET_PAGE & nodeId = 1824 & appnote = en021631 Микробағдарламаны өңдеу үшін: көздің каталог құрылымын түбірлік каталогқа шығарыңыз (c: / MCHPFSUSB). Содан кейін сіз жұмыс кеңістігінің файлын MPLAB ішіне жүктей аласыз.*String to string процедурасы - ресурс шошқасы. Қосылу мәселесін шешу үшін float2string процедурасының әр түрлі нүктелерінде USB қызметінің тәртібі шақырылады. Мұны USB перифериялық құрылғысына үзіліс кезінде қызмет көрсету арқылы жөндеуге болады. Мен микробағдарлама анықтамалық нұсқаға мүмкіндігінше жақын қалуы үшін мен хакты қолдандым.

3 -қадам: құрылғыны тексеру

Құрылғыны тексеру
Құрылғыны тексеру
Құрылғыны тексеру
Құрылғыны тексеру
Құрылғыны тексеру
Құрылғыны тексеру

Нұсқаулар терезелерге арналған, бірақ құрылғы CDC сериялық порт эмуляция драйверлері бар кез келген нәрсеге қосылуы мүмкін.

Құрылғыны микробағдарламамен бағдарламалаңыз. Барлық конфигурация биттері микробағдарламада дұрыс орнатылуы керек. Құрылғыны USB портына қосыңыз. Windows оны анықтап, драйверді таңдауды ұсынады. МІНДЕТТІ түрде «ТЕМЕНШІ ЖҮРГІЗУШІГЕ ШОЛУ» түймесін басыңыз. Жоба мұрағатына қосылған.inf файлының орналасқан жеріне өтіңіз (driver-win2k_winxp). Windows бұл файлды құрылғыны орнату үшін пайдаланады. *CDC драйвері туралы ескерту - CDC сериялық портының эмуляциялау драйвері Windows жүйесінде қамтылған.. Inf файлы (Microchip ұсынған) Windows -қа бұл драйверлерді құрылғыға қосуды айтады. Құрылғыға қандай COM порты тағайындалғанын білу үшін келесі әрекеттерді орындаңыз: Басқару тақтасына өтіңіз (бастау-> Параметрлер-> Басқару тақтасы) «Жүйені» екі рет басыңыз «Аппараттық құралдар» қойындысын нұқыңыз. «Құрылғы менеджері» түймесін басыңыз Порттардың жанындағы «+» белгісін басыңыз Жүйеде COM порттарының тізімі көрсетіледі. Мен құрылғы COM 3 және 4 ретінде көрсетілгенін көрдім, бірақ ол жүйеге байланысты өзгереді. Егер қай порт жаңа екені белгісіз болса, мына әрекетті орындап көріңіз: құрылғыны USB портынан ажыратыңыз. Порттардың бірі жоғалады. Бұл құрылғының COM порты #. Құрылғыны қайта қосыңыз, порт қайта пайда болады. Шағын VB қосымшасы (көзі бар) құрылғыны тексеру үшін пайдаланылуы мүмкін. Жіберу пәрменін енгізіңіз, «Бастау» түймесін басыңыз. Жауап терезеде көрсетіледі.

4 -қадам: Басқа не істей алады?

Басқа не істей алады?
Басқа не істей алады?

Бұл демонстрациялық тақта үйдегі шағын ауа райы станциясы үшін жақсы бастапқы нүкте болып табылады: HIH3160 ылғалдылық датчигін қосыңыз немесе температура мен ылғалдылықты Sensiron HT74 жоғары дәлдік датчигіне ауыстырыңыз. Freescale MPX (a) 4115 қысым датчигін Барометрлік қысымды өлшеңіз. Бұл деректерді желіге синдикаттағыңыз келе ме? Оны өзіңіздің веб -сайтыңызға қосасыз ба, оны google Earth -те көресіз бе немесе RSS -тегі жаңартуларды аласыз ба? Бұл құрылғыны syndicIT.com веб -интерфейсімен біріктіру бойынша нұсқаулықты қараңыз:

Ұсынылған: