Kazalo:

ESP8266 Ura vremenske postaje: 4 koraki
ESP8266 Ura vremenske postaje: 4 koraki

Video: ESP8266 Ura vremenske postaje: 4 koraki

Video: ESP8266 Ura vremenske postaje: 4 koraki
Video: FLProg7: часы реального времени и температура | ESP32 NodeMCU | Визуальное программирование для 2024, November
Anonim
Ura vremenske postaje ESP8266
Ura vremenske postaje ESP8266

Ta projekt je lep način prikaza časa in vremena v majhnem priročnem paketu. Razložil bom projekt, kako deluje in tukaj prikazal kodo.

Za prikaz trenutnega vremena na nastavljenem mestu ter temperature in pritiska lahko pritisnete različne gumbe. Privzeti pogled je čas, ki se potegne s strežnika NTP.

Ni treba nastavljati časa, saj je čas sinhroniziran s strežnika NTP in je zelo natančen. V tej konfiguraciji imam čas in lokalni IP naslov. Kodo lahko spremenite tako, da vključuje datum, vreme, tlak in temperaturo za prikaz na glavnem zaslonu ali na gumbih.

1. korak: Shema

Shema
Shema
Shema
Shema

Shema je razmeroma preprosta in enostavna za uporabo

sledite. Če želite zavrtiti lastno tiskano vezje, obstaja datoteka Gerber. Celotno vezje poganja 5V, ki prihaja iz povezave micro USB. Tako je vezje preprosto in enostavno za napajanje. 5V se napaja v regulator nizkega izpada 3.3V LM 3940, ki daje 3.3V v ESP8266. Na ESP8266 je priključek USB, vendar sem se odločil, da ga na splošno ne uporabljam, ker 5V poganja tudi LCD.

3.3V je treba uporabiti z ESP8266, ne morete ga poganjati neposredno s 5V, ker bo ubil ploščo.

Ti dve stikalni stikali sta povezani z D5 in D6 in sta v kodi konfigurirani za prikaz različnih informacij na zaslonu. Te nastavitve imam nastavljene na Temperatura/Tlak in Napoved.

Vse komponente je mogoče enostavno ročno spajkati na perfboard ali pa je gerber na voljo v mojem GitHubu na

2. korak: Koda

github.com/allenelectronics/esp8266weatherstation

Koda je sestavljena v Arduino IDE in za delovanje potrebuje nekaj konfiguracije

Najprej morate namestiti ploščo ESP8266 v IDE, če želite vanj naložiti kodo.

Obsežna navodila, kako to storiti, so tukaj:

Za pridobitev vremenske funkcionalnosti sem se odločil za uporabo RemoteMe, ki zbira vremenske podatke neposredno iz API -ja in ustvarja kodo, ki jo lahko vstavimo v vašo kodo. Registrirati se morate in nastaviti podatkovni tok na njihovi spletni strani:

Dokumentacijo o RemoteMe najdete tukaj:

Obstaja nekaj posebnih definicij, ki so edinstvene za vašo nastavitev in jih morate dokončati pred nalaganjem:

#define WIFI_NAME "SSID JE TUKAJ"

#define WIFI_PASSWORD "GESO GRE TUKAJ"

#define DEVICE_ID 1

#define DEVICE_NAME "DOBI IZ REMOTEME. ORG"

#define TOKEN "DOBI IZ REMOTEME. ORG"

Tu morate opredeliti definicije glede na podatke o wifi in žeton, ki ga dobite od RemoteMe.

Prepričati se morate, da so vse te knjižnice nameščene in vključene v kodo. Vključil sem povezave do tistih, ki jih je težje dobiti.

#include //https://github.com/remoteme/RemoteMeArduinoLibrary

#vključi

#vključi

#vključi

#vključi

Zadnji del, ki ga je treba spremeniti, je vaša lokacija, saj ta projekt ne uporablja GPS. Spremeniti morate niz »LOCATION«:

sicer če (buttonState2 == LOW && prevButtonState2 == HIGH) {

Serial.print ("LOCATION / n");

Serial.println (fc);

lcd.clear ();

lcd.print ("LOCATION");

lcd.setCursor (0, 1);

lcd.tisk (fc);

lcd.setCursor (0, 0);

zamuda (5000);

prevButtonState2 = buttonState2;

3. korak: Zgradba

Zgradba
Zgradba
Zgradba
Zgradba

Zgradba

Takrat, ko nisem imel dostopa do 3D tiskalnika, je bil to moj zadnji projekt z uporabo omarice. Uporabil sem zlahka na voljo ohišje alarmne plošče, ki je zasnovano za LCD zaslon 16x2.

Povezava: https://www.ebay.co.uk/itm/86-Plastic-project-box-enclosure-case-for-diy-LCD1602-meter-tester-with-buttGA/363214674235?hash=item549148193b:g: IvQAAOSwNXpcFFrv

Vse je napolnjeno v ohišju, LCD zaslon velikosti 16x2 je prilepljen na sprednjo ploščo z vroče lepljenim vezjem.

4. korak: Zaključek

Zaključek

To je lep projekt za namizno digitalno uro, ki ne potrebuje nastavitev ali nastavitev, vzame čas od strežnika NTP in ga prikaže na jasnem osvetljenem LCD -zaslonu.

To ni za popolnega začetnika, saj je potrebna določena konfiguracija kode, zato je treba nastaviti tudi podatkovne tokove. Če imate kakršna koli vprašanja ali komentarje, mi pustite komentar.

Priporočena: