Sadržaj:
- Pribor
- Korak 1: Povezivanje s Arduinom
- 2. korak: Knjižnica za zaslon
- Korak 3: Izgradimo meteorološku postaju
- Korak 4: Završne misli
Video: Meteorološka postaja koja koristi veliki zaslon ST7920: 4 koraka
2024 Autor: John Day | [email protected]. Zadnja promjena: 2024-01-30 09:35
Dragi prijatelji, dobrodošli na još jedan Instructable! U ovom ćemo vodiču prvi put pogledati ovaj veliki LCD zaslon i s njim ćemo napraviti monitor za temperaturu i vlagu.
Uvijek sam želio saznati zaslon sličan ekranu koji koristi moj 3D pisač jer je velik i jeftin pa može biti vrlo koristan za mnoge projekte. Nakon što sam razgledao, otkrio sam da ovaj zaslon koristi moj pisač. Veliki zaslon od 3,2 inča sa upravljačkim programom ST7920 i rezolucijom 128x64 piksela. Kul! Kao što vidite, mnogo je veći od većine zaslona koje smo do sada koristili u svojim projektima, pa će biti koristan u mnogim budućim projektima. Košta samo oko 6 USD!
Možete ga dobiti ovdje →
Pribor
- LCD zaslon ST7920 →
- Arduino Uno →
- Senzor DHT22 →
- Oglasna ploča →
- Žice →
Korak 1: Povezivanje s Arduinom
Pogledajmo sada kako ga koristiti s Arduinom. Danas ću koristiti Arduino Uno, ali radi s mnogim Arduino pločama.
Zaslon koristi SPI sučelje za komunikaciju s mikrokontrolerom pa ga moramo spojiti na hardverske SPI pinove Arduino ploče.
Kao što vidite, zaslon ima mnogo pinova za povezivanje, ali ne brinite da ne moramo povezati sve ove pinove, samo 9 od njih, a samo 4 od njih na digitalne pinove Arduino Uno ploče.
Prvi pin koji je GND ide Arduino GND -u. Drugi pin, Vcc, ide na Arduino 5V izlaz. RS pin ide na digitalni pin 10. R/W pin ide na digitalni pin 11. E pin ide na digitalni pin 13. PSB pin ide na GND, RST pin ide na digitalni pin 8, BLA ide na 3.3V izlaz Arduina a pin BLK ide u GND. To je sve što je naš zaslon spreman za upotrebu!
Možemo si olakšati život ako zajedno spojimo sve GND pinove zaslona.
2. korak: Knjižnica za zaslon
Pogledajmo sada softver koji nam je potreban za upravljanje ovim zaslonom.
Koristit ću biblioteku u8g za upravljanje ovim zaslonom. Prije svega, instalirajmo knjižnicu. Otvaramo Arduino IDE i na izborniku odabiremo Sketch → Include Library → Manage Libraries i tražimo knjižnicu U8G2. Odabiremo ga i pritisnemo install! To je to, naša je knjižnica spremna za korištenje.
Sada idemo na Datoteka → Primjeri i iz primjera isporučenih s bibliotekom pokrenimo primjer GraphicsText. Moramo napraviti samo jednu promjenu u skici prije nego što je postavimo na ploču. Budući da knjižnica U8G podržava mnoge zaslone, moramo odabrati odgovarajući konstruktor za naš zaslon. Stoga pretražujemo kôd za “ST7920” i od dostupnih konstruktora odabiremo korištenje HW_SPI. Ovako komentiramo ovaj redak i spremni smo za postavljanje skice na Arduino. Nakon nekoliko sekundi skica je pokrenuta.
Ako ništa ne vidite na zaslonu, morate podesiti kontrast zaslona pomoću ovog malog potenciometra koji se nalazi na stražnjoj strani zaslona
Pogledajmo sada demo skicu nekoliko sekundi. Kao što vidite, ovaj primjer skice pokazuje mogućnosti knjižnice i prikaza. S ovim zaslonom možemo postići neke super animacije, sasvim je sposoban. Zato se koristi u mnogim 3D pisačima.
Korak 3: Izgradimo meteorološku postaju
Izgradimo sada nešto korisno. Spojimo DHT22 osjetnik temperature i vlažnosti na Arduino. Potrebno nam je samo napajanje i signalna žica koju povezujem na digitalni pin 7. Kako bih olakšao stvari, upotrijebio sam i malu ploču s pločama. Shematski dijagram možete pronaći ovdje.
Kao što vidite, projekt radi dobro i prikazuje temperaturu i vlažnost u stvarnom vremenu.
Pogledajmo sada kôd projekta. Sa samo 60 redaka koda možemo izgraditi ovakav projekt! Kako je to cool! Sve što trebamo učiniti za korištenje zaslona je korištenje ovog konstruktora:
U8G2_ST7920_128X64_1_HW_SPI u8g2 (U8G2_R0, /* CS =* / 10, /* reset =* / 8);
inicijalizirati prikaz u funkciji postavljanja:
u8g2.begin (); u8g2.enableUTF8Print (); u8g2.setFont (u8g2_font_helvB10_tf); u8g2.setColorIndex (1);
i onda sve što radimo je nacrtati okvire i nizove za temperaturu i vlažnost:
u8g2.drawFrame (0, 0, 128, 31);
u8g2.drawFrame (0, 33, 128, 31); u8g2.drawStr (15, 13, "Temperatura");
Zadnje što moramo učiniti je očitati temperaturu i vlažnost sa senzora i prikazati očitanje na ekranu.
void readTemperature ()
{float t = dht.readTemperature (); dtostrf (t, 3, 1, temperatura); }
Kao i uvijek, ovdje možete pronaći kôd projekta.
Korak 4: Završne misli
Za kraj, mislim da je ovaj zaslon vrlo koristan u projektima gdje nam treba veliki zaslon, a ne trebaju nam boje. Jeftin je i jednostavan za korištenje. Mislim da ću ga koristiti u nekim budućim projektima.
Volio bih znati vaše mišljenje o ovom prikazu. Što mislite, kakve će aplikacije imati koristi od prikaza poput ovog? Hvala vam na vašim idejama i na čitanju ovog uputstva. Vidimo se sljedeći put!
Preporučeni:
Profesionalna meteorološka stanica koja koristi ESP8266 i ESP32 DIY: 9 koraka (sa slikama)
Profesionalna meteorološka postaja pomoću ESP8266 i ESP32 DIY: LineaMeteoStazione je potpuna meteorološka stanica koja se može povezati s profesionalnim senzorima tvrtke Sensirion, kao i nekim Davisovim instrumentom (mjerač kiše, anemometar) Projekt je namijenjen kao DIY meteorološka stanica, ali samo zahtijeva
Mini meteorološka postaja koja koristi Arduino i ThingSpeak: 4 koraka
Mini meteorološka postaja koja koristi Arduino i ThingSpeak: Pozdrav svima. U ovom Instructableu vodit ću vas kroz korake za izradu personalizirane mini meteorološke postaje. Također, koristit ćemo ThingSpeak API za prijenos naših vremenskih podataka na njihove poslužitelje, ili koja je svrha vremenske prognoze
Osobna meteorološka postaja koja koristi Raspberry Pi s BME280 na Javi: 6 koraka
Osobna meteorološka postaja koja koristi Raspberry Pi s BME280 na Javi: Loše vrijeme uvijek izgleda gore kroz prozor. Uvijek smo bili zainteresirani za praćenje našeg lokalnog vremena i onoga što vidimo kroz prozor. Također smo željeli bolju kontrolu nad našim sustavom grijanja i klimatizacije. Izgradnja osobne vremenske postaje velika je
Meteorološka postaja koja koristi Arduino UNO: 7 koraka
Meteorološka postaja pomoću Arduino UNO -a: Autor: Hazel YangOvaj projekt je meteorološka stanica koja koristi Arduino UNO ploču za kontrolu protoka podataka, senzor DHT22 za prikupljanje podataka i OLED zaslon za prikaz podataka
Meteorološka postaja koja koristi Raspberry Pi s BME280 u Pythonu: 6 koraka
Meteorološka postaja koja koristi Raspberry Pi s BME280 u Pythonu: is maith an scéalaí an aimir (The Weather is Good Storyteller) S globalnim zatopljenjem i problemima klimatskih promjena, globalni vremenski uzorak postaje nestalan u cijelom svijetu što dovodi do brojnih vremenskih uvjeta prirodne katastrofe (suše, ekstremne