Sadržaj:

Dvoznamenkasti zaslon pomoću jedne 8x8 LED matrice: 3 koraka
Dvoznamenkasti zaslon pomoću jedne 8x8 LED matrice: 3 koraka

Video: Dvoznamenkasti zaslon pomoću jedne 8x8 LED matrice: 3 koraka

Video: Dvoznamenkasti zaslon pomoću jedne 8x8 LED matrice: 3 koraka
Video: Kako saznati ko je pregledao moj Instagram profil | Pogledajte ko je posjetio moj Instagram profil 2024, Srpanj
Anonim
Dvoznamenkasti zaslon pomoću jedne matrice 8x8 Led
Dvoznamenkasti zaslon pomoću jedne matrice 8x8 Led

Ovdje bih želio izgraditi pokazivač temperature i vlažnosti za svoju sobu. Koristio sam jednu LED matricu 8x8 za prikaz dvoznamenkastih brojeva i mislim da je taj dio projekta postao korisniji. Završno sam gradio od kartonske kutije, bojan kao drvo.

Pribor

  1. Arduino Nano x1
  2. Senzor temperature i vlažnosti DHT11 x1
  3. 8x8 LED matrica s MAX7219 x1
  4. 10K otpornik x1
  5. Žice zaglavlja
  6. 5V napajanje x1
  7. Kartonska kutija (4x8x13 cm)

Korak 1: Shematski prikaz

Shematski
Shematski

Digitalni osjetnik temperature i vlažnosti DHT11 isporučuje temperature između 0 - 50 ° C i vlažnost između 20% i 90%. Točnost temperature je ± 2 ° C (maksimalna), a točnost vlažnosti ± 5%.

DHT11 također daje vrijednosti točke rosišta. Rosište je temperatura na koju se zrak mora ohladiti da postane zasićen vodenom parom. Kad se dodatno ohladi, vodena para u zraku će se kondenzirati i oblikovati tekuću vodu.

Korak 2: Ožičenje i boks

Ožičenje i boks
Ožičenje i boks
Ožičenje i boks
Ožičenje i boks
Ožičenje i boks
Ožičenje i boks
Ožičenje i boks
Ožičenje i boks

Prvo sam obojila kartonsku kutiju akrilnom bojom, a nakon sušenja 1 dan završila sam lakom za kosu. Napravio sam četvrtasti prozor za LED zaslon na prednjoj strani. Također sam otvorio malu pravokutnu rupu za napajanje Arduino Nano i stavio nekoliko rupa u blizini senzora DHT11.

Popravio sam Arduino u kut glavne kutije pomoću male kutije i vrućeg silicija.

Postavio sam LED matricu u prozor pomoću prozirnih trakastih traka. Ovdje je važno postaviti ga s rotacijom za 90 ° u smjeru suprotnom od kazaljke na satu jer će kod koristiti gornja 4 reda za desetke, a donja 4 reda za znamenke jedinica. Za modul koji sam koristio strana s MAX7219 trebala bi biti na bazi.

Budući da sam stavio Arduino i senzor na zatvarajuću stranu kutije, nisam ga mogao potpuno zatvoriti?. Bolje izaberi drugu stranu:).

Korak 3: Kodirajte

Kodirati
Kodirati
Kodirati
Kodirati
Kodirati
Kodirati

Prvo učitajte knjižnicu za DHT11 (https://github.com/adidax/dht11) i LED matricu (https://github.com/wayoda/LedControl) ako to već niste učinili.

Kod koristi prva 4 reda LED matrice kao desetke, a posljednja 4 retka kao jedinice. Tako, na primjer, ako provjerite kôd za "jedan", vidjet ćete "11" rotirano za 90 ° u smjeru kazaljke na satu. Ako želite promijeniti ove kodove, vodite računa o tim pojedinostima.

jedan bajt = {B00000000, B01000100, B01111100, B01000000, B00000000, B01000100, B01111100, B01000000};

Kodovi za dobivanje znamenki iz očitanja senzora su:

jedinice = vlažno % 10; desetice = (vlažno /10) % 10;

Za desetke znamenke for petlja radi na sljedeći način:

if (desetice == 1) {for (int c = 0; c <4; c ++) {lc.setRow (0, c, jedan [c]); }

Za znamenke jedinica petlja for radi na sljedeći način:

if (jedinice == 1) {for (int c = 4; c <8; c ++) {lc.setRow (0, c, jedan [c]); }

Redoslijed prikaza je u petlji na sljedeći način:

"° C" -> temperatura -> "brujanje" -> vlažnost -> "dp" -> točka rosišta -> značenje točke rosišta (objašnjeno u nastavku)

Imam neke podatke o tome kako ljudi osjećaju vrijeme prema rosištu i te podatke stavljam u kôd na sljedeći način:

dp <10: suho

9 <dp <15: dobro (g..d)

14 <dp <18: Sweltry (sw)

17 <dp <24: Sweltry plus (sw +)

dp> 23: mokro

Zaslon za ove riječi nije dobar, ali je ipak razumljiv za jedan zaslon veličine 8x8

Preporučeni: