Indholdsfortegnelse:

To-cifret display ved hjælp af enkelt 8x8 Led Matrix: 3 trin
To-cifret display ved hjælp af enkelt 8x8 Led Matrix: 3 trin

Video: To-cifret display ved hjælp af enkelt 8x8 Led Matrix: 3 trin

Video: To-cifret display ved hjælp af enkelt 8x8 Led Matrix: 3 trin
Video: DVD LED Display og Arduino Nano (Seven Segment LED Display basics) 2024, Juli
Anonim
To-cifret display ved hjælp af enkelt 8x8 Led Matrix
To-cifret display ved hjælp af enkelt 8x8 Led Matrix

Her vil jeg gerne bygge en temperatur- og fugtighedsindikator til mit værelse. Jeg brugte enkelt 8x8 LED Matrix til visning af tocifrede tal, og jeg tror, at en del af projektet blev mere nyttig. Jeg boksede den sidste bygget ved hjælp af en papkasse, malet som træ.

Forbrugsvarer

  1. Arduino Nano x1
  2. DHT11 temperatur- og luftfugtighedssensor x1
  3. 8x8 LED matrix med MAX7219 x1
  4. 10K modstand x1
  5. Header ledninger
  6. 5V strømforsyning x1
  7. Papæske (4x8x13 cm)

Trin 1: Skematisk

Skematisk
Skematisk

DHT11 digital temperatur- og fugtighedsføler leverer temperaturer mellem 0 - 50 ° C og luftfugtighed mellem 20% og 90%. Temperaturnøjagtigheden er ± 2 ° C (maksimal) og fugtighedsnøjagtigheden er ± 5%.

DHT11 giver også dugpunktværdier. Dugpunktet er den temperatur, til hvilken luft skal afkøles for at blive mættet med vanddamp. Når den yderligere afkøles, kondenserer den luftbårne vanddamp til dannelse af flydende vand.

Trin 2: Kabelføring og boksning

Kabelføring og boksning
Kabelføring og boksning
Kabelføring og boksning
Kabelføring og boksning
Kabelføring og boksning
Kabelføring og boksning
Kabelføring og boksning
Kabelføring og boksning

Først malede jeg papkassen med akrylmaling, og efter tørring i 1 dag sluttede jeg med et hårspray. Jeg lavede et firkantet vindue til LED -display på forsiden. Jeg åbnede også et lille rektangelhul til Arduino Nano strømforsyning og lagde flere huller i nærheden af DHT11 sensoren.

Jeg fikserede Arduino i hjørnet af hovedboksen ved hjælp af lille boks og varmt silicium.

Jeg placerede LED -matrixen i vinduet ved hjælp af gennemsigtige tapestrimler. Her er det vigtigt at placere den med en 90 ° rotation mod uret, fordi koden vil bruge de øverste 4 rækker for ti-cifre og de nederste 4 rækker for enhedscifre. Til modulet brugte jeg siden med MAX7219 skulle være på undersiden.

Fordi jeg placerede Arduino og sensor i boksens lukkende side, kunne jeg ikke helt lukke den?. Du må hellere vælge den anden side:).

Trin 3: Kode

Kode
Kode
Kode
Kode
Kode
Kode

Upload først biblioteket til DHT11 (https://github.com/adidax/dht11) og LED -matrix (https://github.com/wayoda/LedControl), hvis du ikke allerede har det.

Koden bruger den første 4 række i LED -matricen som tiere og de sidste 4 rækker som enheder. Således for eksempel hvis du tjekker koden for "en" vil du se "11" som drejet 90 ° med uret. Hvis du vil ændre disse koder, skal du passe på denne detalje.

byte en = {B00000000, B01000100, B01111100, B01000000, B00000000, B01000100, B01111100, B01000000};

Koderne til at få cifrene fra sensoraflæsning er:

enheder = fugtigt % 10; tiere = (fugtig /10) % 10;

For ti -cifret kører for -loop som følger:

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

For enheder cifrer for -loop -kørslerne som følger:

hvis (enheder == 1) {for (int c = 4; c <8; c ++) {lc.setRow (0, c, en [c]); }

Visningsrækkefølgen er i loop som følger:

"° C" -> temperatur -> "brum" -> fugtighed -> "dp" -> dugpunkt -> betydning af dugpunkt (forklaret nedenfor)

Jeg har nogle oplysninger om, hvordan folk føler vejret i henhold til dugpunktet og sætter disse oplysninger i koden som følger:

dp <10: tør

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

14 <dp <18: Sweltry (sw)

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

dp> 23: våd

Displayet til disse ord er ikke godt, men stadig forståeligt for et enkelt 8x8 display

Anbefalede: