Väderstation med en stor ST7920 -skärm: 4 steg
Väderstation med en stor ST7920 -skärm: 4 steg
Anonim
Väderstation med en stor ST7920 -skärm
Väderstation med en stor ST7920 -skärm
Väderstation med en stor ST7920 -skärm
Väderstation med en stor ST7920 -skärm
Väderstation med en stor ST7920 -skärm
Väderstation med en stor ST7920 -skärm

Kära vänner välkomna till en annan instruerbar! I denna handledning kommer vi att ta en första titt på denna stora LCD -skärm och vi kommer att bygga en temperatur- och luftfuktighetsmonitor med den.

Jag har alltid velat ta reda på en skärm som liknar den skärm som min 3D -skrivare använder eftersom den är stor och billig så den kan vara mycket användbar för många projekt. Efter att ha tittat runt upptäckte jag att den här skärmen som min skrivare använder är den här. En stor 3,2”-skärm med ST7920 -drivrutinen och en upplösning på 128x64 pixlar. Häftigt! Som du kan se är den mycket större än de flesta skärmar som vi hittills använt i våra projekt, så den kommer att vara användbar i många framtida projekt. Det kostar bara runt $ 6!

Du kan få det här →

Tillbehör

  1. LCD -skärm ST7920 →
  2. Arduino Uno →
  3. DHT22 -sensor →
  4. Brödbräda →
  5. Ledningar →

Steg 1: Anslutning med Arduino

Anslutning med Arduino
Anslutning med Arduino
Anslutning med Arduino
Anslutning med Arduino
Anslutning med Arduino
Anslutning med Arduino

Låt oss nu se hur du använder den med Arduino. Jag ska använda en Arduino Uno idag men det fungerar med många Arduino -kort.

Displayen använder SPI -gränssnittet för att kommunicera med mikrokontrollern så vi måste ansluta den till maskinvaru -SPI -stiften på Arduino -kortet.

Som du kan se har displayen många stift att ansluta, men oroa dig inte, vi behöver inte ansluta alla dessa stift, bara 9 av dem och bara 4 av dem till de digitala stiften på Arduino Uno -kortet.

Den första stiftet som är GND går till Arduino GND. Den andra stiftet som är Vcc går till Arduino 5V -utgången. RS -stift går till digital stift 10. R/W -stift går till digitalt stift 11. E -stift går till digitalt stift 13. PSB -stift går till GND, RST -stift går till digitalt stift 8, BLA går till 3.3V -utgången på Arduino och BLK -stiftet går till GND. Det är det vår display är redo att använda!

Vi kan göra vårt liv enklare om vi kopplar ihop alla GND -stiften på skärmen.

Steg 2: Bibliotek för displayen

Bibliotek för displayen
Bibliotek för displayen
Bibliotek för displayen
Bibliotek för displayen
Bibliotek för displayen
Bibliotek för displayen
Bibliotek för displayen
Bibliotek för displayen

Låt oss nu se den programvara vi behöver för att driva den här skärmen.

Jag kommer att använda u8g -biblioteket för att driva den här skärmen. Först och främst, låt oss installera biblioteket. Vi öppnar Arduino IDE och från menyn väljer vi Sketch → Inkludera bibliotek → Hantera bibliotek och vi söker efter U8G2 -biblioteket. Vi väljer det och trycker på installera! Det är det, vårt bibliotek är klart att använda.

Låt oss nu gå till Arkiv → Exempel och från exemplen som medföljer biblioteket, låt oss köra GraphicsText -exemplet. Vi behöver bara göra en ändring av skissen innan vi laddar upp den till tavlan. Eftersom U8G -biblioteket stöder många skärmar måste vi välja lämplig konstruktör för vår display. Så vi söker koden efter “ST7920” och från de tillgängliga konstruktörerna väljer vi att använda HW_SPI. Vi kommenterar den här raden så här och vi är redo att ladda upp skissen till Arduino. Efter några sekunder är skissen igång.

Om du inte kan se någonting på displayen måste du justera skärmens kontrast med denna lilla potentiometer som finns på baksidan av displayen

Låt oss nu se demoskissen i några sekunder. Som du kan se visar detta exempelskiss bibliotekets och displayens funktioner. Vi kan uppnå några häftiga animationer med den här skärmen, den är ganska kapabel. Det är därför den används i så många 3D -skrivare.

Steg 3: Låt oss bygga en väderstation

Låt oss bygga en väderstation
Låt oss bygga en väderstation
Låt oss bygga en väderstation
Låt oss bygga en väderstation
Låt oss bygga en väderstation
Låt oss bygga en väderstation
Låt oss bygga en väderstation
Låt oss bygga en väderstation

Låt oss nu bygga något användbart. Låt oss ansluta en DHT22 temperatur- och fuktighetssensor till Arduino. Vi behöver bara ström och en signalkabel som jag ansluter den till digital stift 7. För att göra det enklare har jag också använt en liten brödbräda. Du hittar det schematiska diagrammet som bifogas här.

Som du kan se fungerar projektet bra och det visar temperaturen och luftfuktigheten i realtid.

Låt oss nu ta en snabb titt på projektets kod. Med bara 60 rader kod kan vi bygga ett sådant här projekt! Hur coolt är inte det! Allt vi behöver göra för att använda displayen är att använda denna konstruktör:

U8G2_ST7920_128X64_1_HW_SPI u8g2 (U8G2_R0, /* CS =* / 10, /* reset =* / 8);

initiera displayen i installationsfunktionen:

u8g2.begin (); u8g2.enableUTF8Print (); u8g2.setFont (u8g2_font_helvB10_tf); u8g2.setColorIndex (1);

och sedan är det bara att rita ramarna och strängarna för temperatur och luftfuktighet:

u8g2.drawFrame (0, 0, 128, 31);

u8g2.drawFrame (0, 33, 128, 31); u8g2.drawStr (15, 13, "Temperatur");

Det sista vi måste göra är att läsa temperaturen och fuktigheten från sensorn och visa avläsningen på skärmen också.

void readTemperature ()

{float t = dht.readTemperature (); dtostrf (t, 3, 1, temperatur); }

Som alltid kan du hitta koden för projektet bifogad här.

Steg 4: Sista tankarna

Slutgiltiga tankar
Slutgiltiga tankar

Som en sista tanke tycker jag att den här skärmen är mycket användbar i projekt där vi behöver en stor skärm och vi inte behöver färg. Det är billigt och lätt att använda. Jag tror att jag kommer att använda den i några framtida projekt.

Jag skulle gärna vilja veta din åsikt om denna display. Vilken typ av applikationer tror du att de kommer att ha nytta av en skärm som den här? Tack för dina idéer och för att du läste den här instruerbara. Vi ses nästa gång!