Turinys:

ESP8266/ESP32 orų stotis su TFT LCD (-iais): 8 žingsniai
ESP8266/ESP32 orų stotis su TFT LCD (-iais): 8 žingsniai

Video: ESP8266/ESP32 orų stotis su TFT LCD (-iais): 8 žingsniai

Video: ESP8266/ESP32 orų stotis su TFT LCD (-iais): 8 žingsniai
Video: Arduino Nano, BME280 и SSD1306 OLED-метеостанция 2024, Liepa
Anonim
ESP8266/ESP32 orų stotis su TFT skystųjų kristalų ekranu (-ais)
ESP8266/ESP32 orų stotis su TFT skystųjų kristalų ekranu (-ais)
ESP8266/ESP32 orų stotis su TFT skystųjų kristalų ekranu (-ais)
ESP8266/ESP32 orų stotis su TFT skystųjų kristalų ekranu (-ais)
ESP8266/ESP32 orų stotis su TFT skystųjų kristalų ekranu (-ais)
ESP8266/ESP32 orų stotis su TFT skystųjų kristalų ekranu (-ais)

Sveiki!

Šioje trumpoje instrukcijoje norėčiau pristatyti savo antrąjį Esp8266 WS projektą. Kai paskelbiau savo pirmąjį ESP projektą, norėjau pasidaryti antrą. Taigi turėjau laisvo laiko pertvarkyti seną šaltinio kodą, kad jis atitiktų mano poreikius.

Taigi, jei neprieštaraujate, pristatysiu.

1 žingsnis: orų stotis

WS vis dar naudoja „openweathermap“API raktą, kad atsisiųstų orų duomenis ir rodytų juos ekrane.

Reikėjo šiek tiek koduoti, nes tokia forma ji negalėjo rodyti norimų oro piktogramų.

2 žingsnis: medžiagos

WS reikalingos dalys:

- „Nodemcu V3 ESP8266“

- 1,8 colio TFT LCD su ST7735 tvarkyklės IC

- F-F laidai

- Pirminis kodas

- „Arduino IDE“

- SPIFFS palaikymas

- „Openweathermap“API raktas

3 žingsnis: programinė įranga

Šiam projektui aš pateikiu šaltinio kodą ir reikalingus bitmap atvaizdus, atsisiųskite jį iš savo „Github“puslapio:

Mano naudojama biblioteka yra Bodmerio sukurta TFT_eSPI.

Viskas, ką jums reikia padaryti: atsisiųskite tinkamas bibliotekas, sukompiliuokite ir įkelkite į lentą, įkelkite bitų žemėlapių vaizdus su SPIFFS į ESP ir prisijunkite prie LCD.

Aš naudoju 24 bitų 100 X100 bitų žemėlapių vaizdus, tačiau galite naudoti bet kurias kitas piktogramas. Tie, kuriuos naudoju, atsisiuntė iš

4 žingsnis: LCD kištukas

Pinoutas yra toks:

// Rodyti SDO/MISO į „NodeMCU“kaištį D6 (arba palikti atjungtą, jei neskaitote TFT)

// Rodyti šviesos diodą į „NodeMCU“kaištį VIN (arba 5 V, žr. Žemiau)

// Rodyti SCK į „NodeMCU“kaištį D5

// Rodyti SDI/MOSI į „NodeMCU“kaištį D7

// Rodyti DC (RS/AO) į „NodeMCU“kaištį D3

// Rodyti RESET į NodeMCU kaištį D4 (arba RST, žr. Žemiau)

// Rodyti CS į „NodeMCU“kaištį D8 (arba GND, žr. Žemiau)

// Rodyti GND į „NodeMCU“kaištį GND (0V)

// Rodyti VCC į „NodeMCU“5V arba 3.3V

Norėdami sumažinti neigiamą poveikį, galite naudoti 10K potenciometrą arba kitą GPIO kaištį. Kalbant apie save, aš paprastai jungiu apšvietimo kaištį prie TX kaiščio. Žinau, kad tai nėra labai gera idėja ar labai sveika ESP, tačiau ji veikia taip.

5 žingsnis: „WS in Action“

WS veikia
WS veikia
WS veikia
WS veikia
WS veikia
WS veikia

Kai viską padarysite teisingai, pamatysite, kad orų stotis prisijungia prie interneto ir atsisiunčia orų duomenis.

Skirtingi parametrai yra atskirti skirtingomis kilpomis.

Tai, ką matote, yra tikrasis orų aprašymas, temperatūra, drėgmė, vėjo greitis, matomumas metrais, oro slėgis, vėjo kampas, debesų aprėptis procentais (%).

Kalbant apie premiją nuo 21:00 iki 7:00, ekranas atvirkščiai simbolizuoja nakties laiką.

6 žingsnis: keletas svarbių patarimų

Keletas svarbių patarimų
Keletas svarbių patarimų
Keletas svarbių patarimų
Keletas svarbių patarimų
Keletas svarbių patarimų
Keletas svarbių patarimų

Kaip jūs visi žinote, yra keletas 1,8 colio TFT variantų internete. Su originaliais „Adafruit“LCD ekranais paprastai nėra jokių problemų. Tačiau naudojant netikrus (dažniausiai „Aliexpress“), turite atlikti tam tikrus pakeitimus.

„Bodmers TFT_eSPI“biblioteka yra labai įdomi ir turtinga. Geriausia yra tai, kad jis sugebėjo valdyti pikselių poslinkius, priklausomai nuo to, kokio tipo 1,8 colio TFT naudojate.

Norėdami išspręsti šią problemą, siūlau:

Eikite į bibliotekos aplanką ir redaguokite failą User_Setup.h. Išsakykite komentarą #define ST7735_DRIVER ir komentuokite kitus.

Tada nekomentuokite tft aukščio ir pločio. Ir mano atveju (REDTAB), pvz., #Define ST7735_REDTAB. Po to išsaugokite jį šiuo metu ir sudarykite eskizą bei įkelkite į lentą. Kad būtumėte tikri, kad aš taip pat apibrėžiau eskizo parametrus. Tai šiek tiek ilga procedūra, nes jūs turite surinkti ir įkelti eskizą kiekvieną kartą, kol įlipate, kol poslinkis dingsta, tačiau verta eksperimentuoti. Norėdami redaguoti h. failus aš primygtinai siūlau „Wordpad“. Įtraukti vaizdai.

7 žingsnis: Atlikta

Atlikę viską teisingai, galite mėgautis šia maža programėle. Bandžiau kuo geriau susieti bitų žemėlapių vaizdus su orų kodais, tačiau šiuo metu vis dar bandau.

Iš esmės tai padariau tik sau, bet po dienos pagalvojau, kad pasidalinsiu. Gal kam patiks labiau nei man.

Dėkojame, kad perskaitėte mano instrukciją, tikiuosi, kad ji jums bus naudinga ir naudosite, kaip jums patinka.

Geros dienos!

8 žingsnis: mažas atnaujinimas

Mažas atnaujinimas
Mažas atnaujinimas
Mažas atnaujinimas
Mažas atnaujinimas
Mažas atnaujinimas
Mažas atnaujinimas

Po kelių dienų galvojau, kad perdarysiu šį WS nauja forma.

Pakeitimai: ESP32 Uno R3

Lygiagretus ILI9340/41 TFT LCD

Naujos piktogramos

1 papildomas variantas

Pls atitinkamai eskizu redaguokite failą User_setup.h TFT_eSPI bibliotekoje. Pls, nekomentuokite jų ir pakomentuokite kitą variantą, kitaip jis neveiks.

Turite prijungti GPIO 35 iki 15, GPIO 33 iki 34, GPIO 32 iki 36, nes jie yra tik įvesties kaiščiai, tada mūsų ekranas neveiks (žr. Paveikslėlį).

Šaltinio kodą galima rasti „github“.

Rekomenduojamas: