101 Utilizarea gateway-ului uart-to-i2c

Astăzi vom examina posibilitatea utilizării unui gateway UART-to-I2C / SPI / 1W pentru a conecta senzorii de temperatură DS18B20 la computer, adică vom face de fapt un termometru USB. Și termometrul pe care îl vom face nu este simplu, dar cu capacitatea de a transfera date prin rețea.

Avem nevoie de: un UART-la-I2C / SPI / 1W, USB-UART convertor, DS18B20 senzor de temperatură gateway-ul firmei Dallas, construirea de fire și un software special. Convertor USB-UART poate lua orice, dar este mai bine să ia o astfel de aici (de pe site-ul nostru). În primul rând, conectorul său UART - un partener gateway de conectori UART, astfel încât pentru a le conecta nu trebuie să inventăm nimic. În al doilea rând, convertorul permite nu numai pentru a face schimb de date între poarta de acces și computer, dar, de asemenea, pentru a alimenta Gateway (și orice tensiune + 3.3V sau + 5V, ambele dintre ele sunt prezente la convertorul conectorului doar în locurile potrivite). Opțiunea cu gateway-ul nostru și USB-UART este prezentată în fotografia din dreapta.

Coediniv cu USB-UART și UART-la-I2C / SPI / 1W Gateway, vom obține de fapt, o durata mai lunga USB-I2C / SPI / 1W poarta de acces. Acum ne putem conecta doar la senzorul de temperatură Nimu. Senzorul DS18B20 trebuie să fie conectat la gateway conectorul XT3. Acest lucru se face după cum urmează: prima etapă a senzorului conectat la pinul COM (minus alimente), al treilea picior - alimentarea cu concluzia (plus puterea), și în cele din urmă, a doua etapă a senzorului - a concluzionat Mosi / 1W / DATE (link-ul de date). Toate schema colectate se pot lipi în portul USB al computerului.

Pentru a citi temperatura măsurată de senzor cu ajutorul circuitului asamblat, rămân doar două lucruri pe care trebuie să le facem:

În primul rând, trebuie să instalați un driver pentru convertorul USB-to-UART de pe computer. Convertorul oferit pe site se face pe baza chipului cp2102 al companiei silabs, lemnul de foc pentru el poate fi descarcat pe site-ul oficial al acestuia, aici la acest link.

Când sunt instalate driverele pentru convertorul USB-to-UART - dacă îl conectați la un port USB, veți avea un com-port virtual în managerul de dispozitive. Prin intermediul acestui port virtual, un program special scris va comunica cu gateway-ul.

În al doilea rând, aveți nevoie pentru a rula un program special care vă conectați la virtuală com-portul automat configureaza poarta de acces pentru a lucra cu o singură linie și apoi periodic sondaje conectate la senzorul de poarta de acces și afișează citirea de la temperatura lui (link-uri pentru a descărca programul și codul său sursă poate fi găsit la sfârșitul articolului).

Acest program vă permite nu numai să citiți date de la senzorul de temperatură, ci și să le transmiteți pe rețea. În acest scop, programul implementează un server http care trimite date citite de la senzor printr-un port TCP. Mai mult, pagina HTML generată este trimisă o singură dată către gazda de la distanță și apoi transmite numai datele în sine, ceea ce permite economisirea semnificativă a traficului. Frecvența prestabilită de actualizare a datelor este de 1 secundă pe secundă.

Fereastra principală a programului este afișată în imaginea din stânga. În partea de sus a acestei ferestre, selectați com-portul dorit. Butoanele "Conectare" și "Deconectare" vă permit să stabiliți sau să întrerupeți conectarea la senzorul de temperatură.

În mijlocul ferestrei, serverul http este configurat. În mod strict vorbind, trebuie doar să selectați portul prin care gazdele de la distanță se vor conecta la serverul nostru. Butoanele "Start" / "Stop" sunt utilizate pentru a porni / opri serverul.

Programul este special prevăzut cu codul sursă, toate tipurile de tăiere / dopilivaniya - bun venit, mai jos sunt link-uri utile care vă pot ajuta în acest: