Obsah:

Dvoumístný displej s použitím jedné matice 8x8 LED: 3 kroky
Dvoumístný displej s použitím jedné matice 8x8 LED: 3 kroky

Video: Dvoumístný displej s použitím jedné matice 8x8 LED: 3 kroky

Video: Dvoumístný displej s použitím jedné matice 8x8 LED: 3 kroky
Video: LEMFO LF26 MAX smartwatch: The perfect gift for the tech-lover in your life 2024, Listopad
Anonim
Dvoumístný displej využívající jednu matici 8x8 LED
Dvoumístný displej využívající jednu matici 8x8 LED

Zde bych chtěl do svého pokoje zabudovat ukazatel teploty a vlhkosti. Pro zobrazení dvouciferných čísel jsem použil jeden 8x8 LED Matrix a myslím si, že část projektu se stala užitečnější. Konečnou postavenou jsem zabalil pomocí kartonové krabice namalované jako dřevo.

Zásoby

  1. Arduino Nano x1
  2. Senzor teploty a vlhkosti DHT11 x1
  3. Matice 8x8 LED s MAX7219 x1
  4. 10K odpor x1
  5. Drátové vodiče
  6. Napájení 5V x1
  7. Kartonová krabice (4x8x13 cm)

Krok 1: Schéma

Schéma
Schéma

Digitální snímač teploty a vlhkosti DHT11 poskytuje teploty mezi 0 - 50 ° C a vlhkost mezi 20% až 90%. Přesnost teploty je ± 2 ° C (maximum) a přesnost vlhkosti je ± 5%.

DHT11 také poskytuje hodnoty rosného bodu. Rosný bod je teplota, na kterou musí být vzduch ochlazen, aby se nasytil vodní párou. Při dalším ochlazování bude vzduchem přenášená vodní pára kondenzovat za vzniku kapalné vody.

Krok 2: Zapojení a box

Elektroinstalace a box
Elektroinstalace a box
Elektroinstalace a box
Elektroinstalace a box
Elektroinstalace a box
Elektroinstalace a box
Elektroinstalace a box
Elektroinstalace a box

Kartonovou krabici jsem nejprve namaloval akrylovou barvou a po 1 dni sušení jsem dokončil lakem na vlasy. Na přední kryt jsem vyrobil čtvercové okno pro LED displej. Také jsem otevřel malý obdélníkový otvor pro napájení Arduino Nano a dal několik otvorů poblíž snímače DHT11.

Arduino jsem zafixoval v rohu hlavního boxu pomocí malého boxu a horkého křemíku.

LED matici jsem umístil do okna pomocí průhledných páskových pásků. Zde je důležité umístit jej o 90 ° proti směru hodinových ručiček, protože kód bude používat horní 4 řádky pro desítky číslic a spodní 4 řádky pro jednotkové číslice. U modulu, který jsem použil, by strana s MAX7219 měla být na základní straně.

Protože jsem umístil Arduino a senzor na zavírací stranu krabice, nemohl jsem ji úplně zavřít?. Raději vyberte druhou stranu:).

Krok 3: Kód

Kód
Kód
Kód
Kód
Kód
Kód

Pokud ještě nemáte, nejprve nahrajte knihovnu pro DHT11 (https://github.com/adidax/dht11) a matici LED (https://github.com/wayoda/LedControl).

Kód používá první 4 řádky matice LED jako desítky a poslední 4 řádky jako jednotky. Pokud například zkontrolujete kód „jedna“, uvidíte „11“otočené o 90 ° ve směru hodinových ručiček. Pokud chcete tyto kódy změnit, věnujte prosím pozornost tomuto detailu.

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

Kódy pro získávání číslic ze čtení ze snímače jsou:

jednotky = vlhké % 10; desítky = (vlhké /10) % 10;

Pro desítky číslic běží smyčka pro takto:

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

Pro číslice jednotek probíhá smyčka for následujícím způsobem:

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

Pořadí zobrazení je ve smyčce následovně:

"° C" -> teplota -> "hukot" -> vlhkost -> "dp" -> rosný bod -> význam rosného bodu (vysvětleno níže)

Mám nějaké informace o tom, jak lidé cítí počasí podle rosného bodu, a vložte je do kódu následujícím způsobem:

dp <10: suché

9 <dp <15: dobrý (g..d)

14 <dp <18: Sweltry (sw)

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

dp> 23: mokrý

Displej pro tato slova není dobrý, ale stále je srozumitelný pro jeden displej 8x8

Doporučuje: