Sisukord:

Kahekohaline ekraan ühe 8x8 LED-maatriksi abil: 3 sammu
Kahekohaline ekraan ühe 8x8 LED-maatriksi abil: 3 sammu

Video: Kahekohaline ekraan ühe 8x8 LED-maatriksi abil: 3 sammu

Video: Kahekohaline ekraan ühe 8x8 LED-maatriksi abil: 3 sammu
Video: Как использовать светодиодный семисегментный дисплей и рассчитать значение его резисторов 2024, November
Anonim
Kahekohaline ekraan ühe 8x8 LED-maatriksi abil
Kahekohaline ekraan ühe 8x8 LED-maatriksi abil

Siin tahaksin ehitada oma toa temperatuuri ja niiskuse indikaatori. Kasutasin kahekohaliste numbrite kuvamiseks ühte 8x8 LED-maatriksit ja arvan, et osa projektist sai kasulikumaks. Pappkasti abil ehitatud finaali karpisin, puiduna maalitud.

Tarvikud

  1. Arduino Nano x1
  2. DHT11 temperatuuri ja niiskuse andur x1
  3. 8x8 LED -maatriks koos MAX7219 x1 -ga
  4. 10K takisti x1
  5. Päise juhtmed
  6. 5V toide x1
  7. Pappkarp (4x8x13 cm)

Samm: skemaatiline

Skeem
Skeem

DHT11 digitaalne temperatuuri- ja niiskusandur pakub temperatuuri 0–50 ° C ja niiskust 20–90%. Temperatuuri täpsus on ± 2 ° C (maksimaalne) ja niiskuse täpsus ± 5%.

DHT11 pakub ka kastepunkti väärtusi. Kastepunkt on temperatuur, milleni õhk tuleb veeauruga küllastumiseks jahutada. Edasisel jahutamisel kondenseerub õhus olev veeaur, moodustades vedela vee.

2. samm: juhtmestik ja poksimine

Juhtmestik ja poks
Juhtmestik ja poks
Juhtmestik ja poks
Juhtmestik ja poks
Juhtmestik ja poks
Juhtmestik ja poks
Juhtmestik ja poks
Juhtmestik ja poks

Kõigepealt värvisin pappkasti akrüülvärviga ja pärast 1 -päevast kuivatamist lõpetasin juukselakiga. Tegin esikaanele neljakandilise akna LED -ekraanile. Samuti avasin väikese ristkülikukujulise augu Arduino Nano toiteallika jaoks ja panin DHT11 anduri lähedale mitu auku.

Kinnitasin Arduino põhikarbi nurgas väikese karbi ja kuuma räni abil.

Asetasin LED -maatriksi aknasse, kasutades läbipaistvaid teibiribasid. Siin on oluline paigutada see 90 ° vastupäeva pöörlemisega, sest kood kasutab ülemist 4 rida kümnete numbrite jaoks ja alumist 4 rida ühikute numbrite jaoks. Mooduli puhul kasutasin MAX7219 külg aluse poole.

Kuna panin Arduino ja anduri kasti sulgemisküljele, ei saanud ma seda täielikult sulgeda?. Vali parem teine pool:).

3. samm: kood

Kood
Kood
Kood
Kood
Kood
Kood

Esmalt laadige üles kogu DHT11 (https://github.com/adidax/dht11) ja LED -maatriksi (https://github.com/wayoda/LedControl) jaoks, kui teil seda veel pole.

Kood kasutab LED -maatriksi esimest 4 rida kümnetena ja viimase 4 rida ühikuna. Näiteks kui kontrollite "ühe" koodi, näete "11" 90 ° päripäeva pööratuna. Kui soovite neid koode muuta, hoolitsege selle detaili eest.

üks bait = {B00000000, B01000100, B01111100, B01000000, B00000000, B01000100, B01111100, B01000000};

Andurite näitude numbrite saamiseks on järgmised koodid:

ühikud = niiske % 10; kümned = (niiske /10) % 10;

Kümnete numbrite korral töötab tsükkel järgmiselt:

kui (kümned == 1) {for (int c = 0; c <4; c ++) {lc.setRow (0, c, one [c]); }

Ühikute numbrite puhul töötab tsükkel järgmiselt:

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

Kuvamiskorraldus on silmus järgmine:

"° C" -> temperatuur -> "hum" -> niiskus -> "dp" -> kastepunkt -> kastepunkti tähendus (selgitatud allpool)

Mul on teavet selle kohta, kuidas inimesed ilma kastepunkti järgi ilmastikku tunnevad, ja sisestan selle teabe koodi järgmiselt:

dp <10: kuiv

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

14 <dp <18: Sweltry (sw)

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

dp> 23: märg

Nende sõnade kuvamine ei ole hea, kuid ühe 8x8 kuvari jaoks siiski arusaadav

Soovitan: