Obsah:
- Krok 1:
- Krok 2:
- Krok 3: Začínáme - hardware
- Krok 4: Začínáme - software
- Krok 5: Dvoubarevné LED diody
- Krok 6: 7segmentový displej
- Krok 7:
- Krok 8:
- Krok 9:
- Krok 10: Tlačítka
Video: Moduly LED displeje Arduino a TM1638: 11 kroků
2024 Autor: John Day | [email protected]. Naposledy změněno: 2024-01-30 08:21
Pokud potřebujete rychlý a snadný způsob přidání vstupů a výstupů uživatele do projektu, jsou tyto zobrazovací moduly zajímavé a zábavné.
Obsahují osm 7segmentových červených číslic LED, osm červených/zelených LED a také osm tlačítek pro vstup uživatele. Jednotky lze také řetězit za sebou, což umožňuje až pět najednou, a ke každému modulu je přiložen krátký kabel a také krátké rozpěrky a šrouby, jak ukazuje obrázek.
Krok 1:
Distanční vložky jsou dostatečně dlouhé na to, aby zvedly desku plošných spojů nad povrch, avšak k montáži desek kamkoli užitečných budete potřebovat delší. Pokud chcete modul připevnit blízko povrchu panelu, můžete také chtít odstranit zásuvky IDC. To by byl jednoduchý úkol odpájení, protože jsou to průchozí zásuvky.
Krok 2:
Deska je řízena integrovaným obvodem TM1638.
Toto je integrovaný obvod LED a ovladače rozhraní od společnosti „Titan Micro Electronics“. Tyto integrované obvody můžete také zakoupit u PMD Way. Můžete si také stáhnout datový list pro další podrobnosti.
Krok 3: Začínáme - hardware
Hardware-Připojení k desce kompatibilní s Arduino (nebo jinému MCU) je celkem jednoduché. Vývody jsou zobrazeny na zadní straně desky plošných spojů a odpovídají kování na plochém kabelu. Když se podíváte na konec kabelu jako takový.
Pravý horní otvor je kolík jedna, přičemž vlevo nahoře je kolík dva, kolík vpravo dole devět a dole vlevo kolík deset. Pinouty jsou tedy:
- Vcc (5V)
- GND
- CLK
- DIO
- STB1
- STB2
- STB3
- STB4
- STB5
- Nepřipojený.
Pro použití Arduina jsou piny 1 ~ 4 minimum potřebné k použití jednoho modulu. Každý další modul bude vyžadovat další digitální pin připojený k STB2, STB3 atd. Více o tom později. Vezměte prosím na vědomí, že každý modul nastavený na plný jas s každou zapnutou LED spotřebovává 127 mA, takže by bylo rozumné použít externí napájení s více než jedním modulem a další připojení s deskami Arduino.
Krok 4: Začínáme - software
Software - stáhněte a nainstalujte knihovnu T1638 odtud. Díky a sláva rjbatistovi na gmail dot com pro knihovnu. Inicializace modulů v náčrtu je jednoduchá. Zahrnout knihovnu s:
#zahrnout
pak pro každý modul použijte jednu z následujících položek:
Modul TM1638 (x, y, z);
x je digitální pin Arduino připojený ke kolíku 4 kabelu kabelu modulu, y je digitální pin Arduino připojený ke kolíku 3 kabelu kabelu modulu a z je stroboskopický kolík. Pokud byste tedy měli jeden modul s daty, hodinami a bleskem připojený k pinům 8, 7 a 6, použili byste:
Modul TM1638 (8, 7, 6);
Pokud byste měli dva moduly, s bleskem modulu jedna připojeným k Arduino digital 6 a modulem dva s bleskem připojeným k digitálu 5, použili byste:
Modul TM1638 (8, 7, 6); modul TM1638 (8, 7, 5);
a tak dále pro další moduly. Nyní k ovládání displeje…
Krok 5: Dvoubarevné LED diody
Ovládání červené/zelené LED diody je snadné. Pro informaci jsou očíslovány od nuly do sedmi zleva doprava. Chcete -li zapnout nebo vypnout jednu LED, použijte následující:
module.setLED (TM1638_COLOR_RED, x); // nastavit číslo LED x na redmodule.setLED (TM1638_COLOR_GREEN, x); // nastavit číslo LED x na zelený modul.setLED (TM1638_COLOR_RED+TM1638_COLOR_GREEN, 0); // nastavte číslo LED x na červenou a zelenou
Použití výše uvedené metody může být jednoduché, ale poněkud neefektivní. Lepším způsobem je oslovit všechny LED diody v jednom prohlášení. Za tímto účelem pošleme na displej dva bajty dat v šestnáctkové soustavě. MSB (nejvýznamnější bajt) se skládá z osmi bitů, z nichž každý představuje jednu zelenou LED svítí (1) nebo nesvítí (0). LSB (nejméně významný bajt) představuje červené LED diody.
Snadný způsob, jak určit hexadecimální hodnotu pro ovládání LED diod, je jednoduchý. Na obrázku máte jednu řadu LED diod - prvních osm zelených a druhé osm červených. Nastavte každou číslici na 1 pro zapnutí a 0 pro vypnutí. Převeďte dvě binární čísla na hexadecimální a použijte tuto funkci:
module.setLEDs (0xgreenred);
Kde zelená je hexadecimální číslo pro zelené LED diody a červená je hexadecimální číslo pro červené LED diody. Například pokud chcete zapnout první tři LED diody jako červené a poslední tři jako zelené, binární reprezentace bude:
00000111 11100000, což je v šestnáctkové soustavě E007.
Použili bychom tedy:
module.setLEDs (0xE007);
který vytvoří obrázek, jak je uvedeno výše.
Krok 6: 7segmentový displej
Chcete -li vymazat numerický displej (nikoli však LED diody níže), jednoduše použijte:
module.clearDisplay ();
nebo pro zapnutí každého segmentu A všech LED diod použijte následující
module.setupDisplay (true, 7); // kde 7 je intenzita (od 0 ~ 7)
Chcete -li zobrazit desetinná čísla, použijte funkci:
module.setDisplayToDecNumber (a, b, false);
kde a je celé číslo, b je pozice pro desetinnou čárku (0 pro žádnou, 1 pro číslici 8, 2, pro číslici 7, 4 pro číslici 6, 8 pro číslici 4 atd.) a poslední parametr (true/ false) zapíná nebo vypíná úvodní nuly. Následující skica ukazuje použití této funkce:
#include // definovat modul na datovém pinu 8, hodinovém pinu 9 a stroboskopickém pinu 7 modulu TM1638 (8, 9, 7); nepodepsané dlouhé a = 1; void setup () {} void loop () {for (a = 10 000; a <11 000; a ++) {module.setDisplayToDecNumber (a, 4, false); zpoždění (1); } pro (a = 10 000; a <11 000; a ++) {module.setDisplayToDecNumber (a, 0, true); zpoždění (1); }}
… S výsledky zobrazenými ve videu.
Krok 7:
Jednou z nejzajímavějších funkcí je možnost posouvání textu na jednom nebo více displejích. K tomu ve skutečnosti nepotřebujete vysvětlení, protože přiložený ukázkový náčrt:
tm_1638_rolling_modules_example.pde
dodávané s knihovnou TM1638 lze snadno sledovat. Jednoduše vložte svůj text do konstantního řetězce , ujistěte se, že moduly jsou zapojeny podle definice modulu na začátku náčrtu a jste nastaveni. Chcete -li zobrazit dostupné znaky, navštivte stránku funkcí. Všimněte si toho, že displej je pouze sedmisegmentový, takže některé znaky nemusí vypadat perfektně, ale v kontextu vám dá dobrý nápad-podívejte se na video v tomto kroku.
Krok 8:
Nakonec můžete také jednotlivě adresovat každý segment každé číslice. Zvažte obsah tohoto pole:
bajtové hodnoty = {1, 2, 4, 8, 16, 32, 64, 128};
každý prvek představuje číslice 1 ~ 8. Hodnota každého prvku určuje, který segment číslice se zapne. Pro segmenty a ~ f, dp jsou hodnoty 1, 2, 4, 6, 16, 32, 64, 128. Takže výsledky použití výše uvedeného pole v následující funkci:
module.setDisplay (hodnoty);
bude podle obrázku.
Krok 9:
Přirozeně můžete kombinovat hodnoty pro každou číslici a vytvářet vlastní znaky, symboly atd. Například pomocí následujících hodnot:
bajtové hodnoty = {99, 99, 99, 99, 99, 99, 99, 99};
v tomto kroku jsme vytvořili podle obrázku.
Krok 10: Tlačítka
Hodnoty tlačítek jsou vráceny jako bajtová hodnota z funkce:
module.getButtons ();
Protože existuje osm tlačítek, každé z nich představuje jeden bit binárního čísla, které je vráceno jako bajt. Tlačítko nalevo vrací desetinné a pravé 128. Může také vrátit souběžné stisknutí, takže stisknutí tlačítek jedna a osm vrátí 129. Zvažte následující náčrt, který vrátí hodnoty stisknutí tlačítka v desítkové formě, poté zobrazí hodnota:
#include // definovat modul na datovém pinu 8, hodinovém pinu 9 a stroboskopickém pinu 7 modulu TM1638 (8, 9, 7); bajtová tlačítka; neplatné nastavení () {} prázdná smyčka () {tlačítka = modul.getButtons (); module.setDisplayToDecNumber (tlačítka, 0, false); }
a výsledky ve videu.
Tyto zobrazovací panely jsou užitečné a ve vašich projektech snad najdou domov. Tento příspěvek vám přinesl web pmdway.com - nabízí vše pro výrobce a nadšence do elektroniky s doručením zdarma po celém světě.
Doporučuje:
Chytré hodinky DIY Fitness Tracker s oxymetrem a srdeční frekvencí - Modulární elektronické moduly od TinyCircuits - Nejmenší arkáda: 6 kroků
DIY Fitness Tracker Chytré hodinky s oxymetrem a srdeční frekvencí | Modulární elektronické moduly od TinyCircuits | Smallest Arcade: Hej, co se děje, lidi! Akarsh zde od CETech. Dnes máme s sebou některé ze senzorových modulů, které jsou velmi užitečné v našem každodenním životě, ale v jejich malé verzi. Senzory, které dnes máme, jsou velmi malé ve srovnání s
MODULY ŘIDIČE NIXIE TUBE - Část II: 11 kroků
MODULY ŘIDIČE NIXIE TUBE - Část II: Tento Instructable navazuje na modul ovladače nixie tube (část I), který jsem zde zveřejnil. Deska ovladače nixie je navržena pro příjem sériového vstupu z externího mikrokontroléru (Arduino atd.) a výstupní desítkové informace a výkon trasy t
Cool Lighting for Fre (LED moduly): 9 kroků
Cool Lighting for Fre (LED moduly): v tomto návodu jsem vyrobil malá LED světla pro pěkné světelné efekty, používal jsem recyklované baterie, protože to bylo zdarma, ale můžete použít jakoukoli baterii, kterou chcete
Živé reverzní inženýrství WiFi moduly: 8 kroků (s obrázky)
Živé reverzní inženýrství WiFi moduly: Rád znovu použiji tolik funkčních komponent, kolik dokážu. I když jsem reverzní inženýrství a tiskárna WiFi, tato metoda funguje na mnoha dalších zařízeních. Prosím; nerozebírejte jen zastaralou elektroniku, ale očekávejte, že najdete datové listy pro zachráněné komponenty
Samostatně vyrobený trojitý (3x 250 W) laboratorní napájecí zdroj s moduly DPS5005 a USB: 7 kroků
Samostatně vyrobený trojitý (3x 250 W) laboratorní napájecí zdroj s moduly DPS5005 a USB: Snadno sestavitelný a levný špičkový laboratorní napájecí zdroj s 3x 250 W (50 V DC a 5 A na každém panelu). Každý DPS5005 můžete připojit k počítači a ovládat panely samostatně. Postavit tento Powersuplly bude trvat 4 až 8 hodin, čas závisí