Obsah:
- Krok 1: Veci použité v tomto projekte
- Krok 2: Príbeh
- Krok 3: Stiahnite si potrebné súbory
- Krok 4: Zostavte
- Krok 5: Program
- Krok 6: Urobte to prenosným
- Krok 7: Záver
- Krok 8: Kód
Video: Zobrazenie dátumu, času a teploty pomocou XinaBoxu: 8 krokov
2024 Autor: John Day | [email protected]. Naposledy zmenené: 2024-01-30 11:58
Cool OLED displej zobrazujúci dátum, čas a teplotu v stupňoch Celzia a Fahrenheita pomocou Xinabox xChips na základe ESP8266.
Krok 1: Veci použité v tomto projekte
Hardvérové komponenty
- Programátor USB XinaBox IP01 x 1 xChip na základe FT232R od FTDI Limited
- XinaBox CW01 x 1 xChip Wi-Fi Core na základe Wi-Fi modulu ESP8266
- XinaBox SW01 x 1 xChip Snímač teploty, vlhkosti a atmosférického tlaku založený na BME280 od spoločnosti Bosch.
- XinaBox OD01 x 1 xChip 128 x 64 pixelový OLED displej
- Napájací zdroj XinaBox PU01 x 1 xChip USB (typ A)
- Konektory zbernice XinaBox XC10 x 1 xChip
- Napájanie 5V USB x 1
Softvérové aplikácie a online služby
Arduino IDE
Krok 2: Príbeh
Úvod
Tento projekt som postavil na zobrazenie dátumu, času UCT a teploty pomocou XinaBox xChips, ktorý používa zbernicový protokol I2C. Čas bol načítaný zo servera Google NTP. Teplota okolia sa merala pomocou SW01 xChip a zobrazovala sa na OLED displeji OD01 xChip v stupňoch Celzia a Fahrenheita. Nasledujúci obrázok zobrazuje OLED displej.
OLED zobrazujúci dátum, čas a teplotu
Krok 3: Stiahnite si potrebné súbory
Pre tento projekt budete potrebovať nasledujúce knižnice a softvér.
- Arduino IDE - vývojový softvér, v ktorom budete kódovať
- xSW01 - knižnica teplotných senzorov
- xCore - Základná knižnica pre XinaBox xChips
- xOD01 - OLED knižnica displeja.
- Časové pásmo - knižnica na výber časového pásma
- Čas - Ak chcete používať časové funkcie
- NTPClient - Umožňuje vám získať čas zo servera
- Aby ste mohli dosku nainštalovať, musíte si tiež stiahnuť dosku ESP8266 a riadiť sa pokynmi, ktoré sú k nej priložené
Po stiahnutí nainštalujete IDE a knižnice. Je celkom jednoduché, ak budete postupovať podľa pokynov.
Krok 4: Zostavte
Váš hlavný xChip, ktorý spustí a spracuje program, je CW01. Je založený na WiFi module ESP8266 a používa protokol zbernice I2C. Na programovanie na CW01 budete potrebovať programovací xChip. IP01 nám umožňuje naprogramovať CW01 prostredníctvom USB portu na našom počítači jednoduchým kliknutím na dva xChipy pomocou konektorov zbernice XC10 a ich vložením do USB portu. Nie je potrebné žiadne zapojenie ani spájkovanie. Jedna vec, ktorú je potrebné vziať na vedomie, je orientácia identifikačných mien xChip. Všetky by mali byť orientované rovnakým smerom. Teraz by ste mali mať nasledujúce nastavenie.
Kliknite na CW01 a IP01 a vložte ich do portu USB vo vašom počítači
Ak poznáte xChips, môžete pripojiť každý xChip dohromady pomocou konektorov zbernice XC10, ktoré chcete použiť pre svoj projekt, a potom ich vložiť do portu USB. Budeme používať teplotný senzor SW01 a OLED displej OD01.
Môžete prepojiť všetky svoje čipy a potom ich vložiť do portu USB
Krok 5: Program
Stiahnite alebo skopírujte a prilepte nižšie uvedený kód do svojho Arduino IDE. Ak v kóde nevykonávate žiadne zmeny, zadajte svoje údaje o WiFi do príslušných polí, ako je uvedené nižšie. Zadajte tiež spoľahlivý časový server NTP. Na tento projekt som použil časový server Google.
Podrobnosti o WiFi a časový server NTP
Teraz skompilovajte a nahrajte. Uistite sa, že ste v ponuke nástrojov v Arduino IDE vybrali správny port a dosku COM. Po nahraní by mal byť čas, dátum a teplota zobrazený nižšie.
Po nahraní by ste mali vidieť nasledujúce
Krok 6: Urobte to prenosným
Teraz môžete jednotku vytiahnuť z USB portu a oddeliť každý xChip jednoduchým vytiahnutím. Pretože je programovanie dokončené, IP01 už nie je potrebný. Teraz môžete svoj projekt pripojiť akýmkoľvek spôsobom, pokiaľ je to potrebné, pokiaľ sú všetky identifikačné názvy orientované rovnakým smerom. Na napájanie našej jednotky použijeme PU01. To nám umožňuje napájať ho z bežnej powerbanky alebo akéhokoľvek 5V USB zdroja. Pripojil som svoj, ako je znázornené nižšie.
Konečná montáž. xChips je možné pripojiť akýmkoľvek spôsobom, akým si prajete.
Krok 7: Záver
Dokončenie tohto projektu bude trvať 20 minút. Ak chcete čas vo svojom mieste, zvážte ukážku kódu v knižnici časových pásiem alebo urobte aritmetiku s časom UTC. Neboli použité žiadne drôty a nebolo potrebné žiadne spájkovanie.
Krok 8: Kód
Date_Time_Temp.ino Arduino Jednoducho zadajte svoje WiFi údaje do príslušných polí a nahrajte ich na tabuľu.
#include // zahrnúť základnú knižnicu pre XinaBox xCHIPS
#include // zahrnúť knižnicu displeja OLED #include // zahrnúť knižnicu snímačov teploty #include // zahrnúť funkciu ESP8266WiFi #include // zahrnúť časové knižnice #include #include #include #include #include xSW01 SW01; // definujte vlastnosti NTP #define ntpOffset 60 * 60 // v sekundách #define ntpInterval 60 * 1000 // v milisekundách // medzi dvojité úvodzovky vložte spoľahlivý časový server ntp // tu som použil časový server Google ntp # definovať ntpAddress "time1.google.com" // nastaviť NTP UDP klienta WiFiUDP ntpUDP; NTPClient timeClient (ntpUDP, ntpAddress, ntpOffset, ntpInterval); // teplotná premenná float tempC; // celsius float tempF; // fahrenheit // vaše údaje o wifi const char* wifi_ssid = "XinaBox"; // tvoj wifi ssid const char* wifi_pass = "RapidIoT"; // tvoje heslo do wifi // premenná dátumu a času Reťazec dátumu; Doba reťazca; // premenné obsahujúce dni a mesiace const char * days = {"nedeľa", "pondelok", "utorok", "streda", "štvrtok", "piatok", "sobota"}; const char * mesiace = {"Jan", "Feb", "Mar", "Apr", "May", "June", "July", "Aug", "Sep", "Oct", "Nov "," Dec "}; const char * ampm = {"AM", "PM"}; neplatné nastavenie () {tempC = tempF = 0; // inicializácia teploty na nulu timeClient.begin (); // spustenie klienta NTP UDP // spustenie sériovej komunikácie Serial.begin (115200); // spustenie komunikácie i2c a nastavenie pinov Wire.begin (2, 14); // spustenie snímača teploty SW01.begin (); // spustenie OLED displeja OLED.begin (); // vymazanie OLED displeja OD01.clear (); // nadviazanie wifi pripojenia wifi_connect (); oneskorenie (1000); } void loop () {// spustiť, ak je nadviazané wifi pripojenie if (WiFi.status () == WL_CONNECTED) {SW01.poll (); // čítať teplotu tempC = SW01.getTempC (); // uloženie teploty v celcius tempF = SW01.getTempF (); // uloženie teploty vo fahrenheit date = ""; // vymazanie premennej dátumu clktime = ""; // vymazanie časovej premennej // aktualizujte klienta ntp a získajte časovú pečiatku unixu utc timeClient.update (); nepodpísané dlhé epochTime = timeClient.getEpochTime (); // previesť prijatú časovú pečiatku na objekt time_t time_t utc; utc = epochTime; // utc time TimeChangeRule utcRule = {"UTC", Last, Sun, Mar, 1, 0}; Časové pásmo UTC (utcRule, utcRule); // formát časových premenných dátum += dni [deň v týždni (utc) - 1]; dátum += ","; dátum += mesiace [mesiac (utc) - 1]; dátum += ""; dátum += deň (utc); dátum += ","; dátum += rok (utc); // formátovanie času na 12-hodinový formát s AM/PM a bez sekúnd clktime += hourFormat12 (utc); clktime += ":"; if (minúta (utc)
Odporúča:
Meranie teploty pomocou XinaBoxu a termistora: 8 krokov
Meranie teploty pomocou XinaBoxu a termistora: Zmerajte teplotu kvapaliny pomocou analógového vstupu xChip od XinaBoxu a sondy termistora
Internetové hodiny: Zobrazenie dátumu a času pomocou OLED pomocou ESP8266 NodeMCU s protokolom NTP: 6 krokov
Internetové hodiny: Zobrazenie dátumu a času pomocou OLED pomocou ESP8266 NodeMCU s protokolom NTP: Ahoj chlapci, v tomto návode postavíme internetové hodiny, ktoré získajú čas z internetu, takže tento projekt nebude potrebovať na spustenie žiadne RTC, ale bude potrebovať iba fungujúce internetové pripojenie A na tento projekt potrebujete esp8266, ktorý bude mať
Arduino vykresľovanie dátumu/času/protokolovanie pomocou nástrojov Millis () a PfodApp: 11 krokov
Arduino vykresľovanie dátumu/času/protokolovanie pomocou Millis () a PfodApp: Nie je potrebné žiadne programovanie pre Arduino alebo Android. Podporované sú tiež moduly RTC a GPS. Automatická korekcia časových pásiem, posunu RTC a chýbajúcich prestupných sekúnd GPS Úvod Tento tutoriál vám ukáže, ako používať zariadenie Arduino millis ( ) časové pečiatky na vykreslenie údajov
Roztomilá jednotka dátumu, času a teploty: 3 kroky
Roztomilá zobrazovacia jednotka dátumu, času a teploty: Ahoj priatelia, v tomto návode vám vysvetlím postup výroby jednotky dátumu, času a aktuálnej teploty pomocou Arduino pro mini, RTC a osemmiestneho sedemsegmentového displeja. vo veľmi kompaktnej jednotke, ktorá je užitočným zariadením
Presun dátumu a času do aplikácie Blynk pomocou Wemos D1 Mini Pro: 10 krokov
Posunutie dátumu a času do aplikácie Blynk pomocou Wemos D1 Mini Pro: Wemos D1 Mini Pro použijeme na posunutie času & dátum do aplikácie Blynk. K tejto aktivite nebudete musieť k Wemos D1 Mini Pro pripájať žiadne komponenty