Obsah:
2025 Autor: John Day | [email protected]. Naposledy změněno: 2025-01-23 14:38
Znovu a znovu narazíte na zajímavé části na ebay, od přátel nebo jen tak projíždíte v bazarech. Jedním z příkladů toho byl obrovský vakuový fluorescenční displej Noritake Itron 40 x 2 znaků z roku 1994 (nebo dříve), který byl předán od klienta.
Původně to vypadalo docela složitě, ale poté, co jsme strávili nějaký čas, byly nalezeny datové listy a zjistilo se, že mají jednoduché sériové rozhraní - a s trochou práce jsme to zvládli, takže čtěte dál, pokud vás zajímají klasické VFD nebo mají podobnou jednotku.
Krok 1:
Přenosová rychlost sériového rozhraní je určena propojkami na desce plošných spojů.
Krok 2:
Porovnání výše uvedené tabulky s propojkami na našem modulu nám dává rychlost dat 19200 bps bez parity. Skvělé - takové spojení snadno vytvoříme pomocí mikrokontroléru se sériovým výstupem a logickými úrovněmi 5V; pro naše příklady použijeme desku kompatibilní s Arduino.
Krok 3:
Zapojení VFD je jednoduché - viz bílé propojky označené CN2, jak je uvedeno výše. Pin 1 je 5V (potřebujete externí zdroj, který může nabídnout až 700 mA), pin 2 na digitální pin Arduino 7 a pin 3 na Arduino a napájecí zdroj GND.
Místo TX používáme Arduino D7 se softwarovým sériovým číslem, aby se na displeji při nahrávání skici nezobrazovaly odpadky. Pak jde o to jednoduše odeslat text na displej, například zde je rychlý ukázkový náčrtek:
// Práce s moduly VFD Noritake Itron - model CU40026SCPB -T20A #include SoftwareSerial VFD (6, 7); // RX, TX
neplatné nastavení ()
{VFD.begin (19200); }
prázdná smyčka ()
{VFD.print („Ahoj, světe. Toto je VFD Noritake“); // Můžete vyhodit text do {} while (1); }
Krok 4:
Což má za následek následující…
Krok 5:
Pokud vám nejde o barvu nebo intenzitu displeje, vyzkoušejte nějaký ten Perspex nahoře - například…
Krok 6: Ovládání displeje
V tuto chvíli budete potřebovat datový list. Jak jste již viděli, psaní textu je velmi jednoduché - stačí použít funkce.print. Můžete však chtít odeslat jednotlivé znaky a speciální příkazy k ovládání aspektů displeje. Ty jsou popsány v datovém listu - viz tabulky „Softwarové příkazy“a „Znaková písma“.
Pokud potřebujete odeslat jednotlivé příkazy - například „clear display“, což je 0x0E, použijte příkaz.write, například:
VFD.write (0x0E); // vymazat displej
Některé příkazy jsou ve formátu únikových kódů (pamatujete si je?), Takže musíte poslat ESC a pak následující bajt, například pro změnu jasu na 50%:
VFD.write (0x1B); // ESC VFD.write (0x4C); // jas VFD.write (0x40); // 50% jas
Vyzbrojeni těmito znalostmi a datovými listy nyní můžete provádět všechny příkazy. Podle datového listu je možné měnit písma, ale bez ohledu na to, jaký hardwarový můstek nebo příkaz, který jsme zkoušeli, by nevypadl z japonského písma katakana. Vaše obrazovka se může lišit. Pokud použijete funkci „priorita zápisu na obrazovku“, dbejte na to, aby se datový list týkal prodlouženého „zaneprázdněného“času zpožděním následných zápisů na displej o milisekundu.
Krok 7: Dát to všechno dohromady
Místo toho, abych vysvětlil všechny možné příkazy, vložil jsem ty běžné do zdokumentovaných funkcí v ukázkovém náčrtu níže, po kterém následuje rychlé video skici v provozu.
// Práce s moduly VFD Noritake Itron - model CU40026SCPB -T20A // John Boxall 2013
#zahrnout
SoftwareSerial VFD (6, 7); // rx, tx
neplatné nastavení ()
{VFD.begin (19200); // nastavení rychlosti pro reset sériového portu softwaruVFD (); VFDclearsceen (); // VFD.write (0x12); // režim svislého posouvání (zapnuto)}
zrušit resetVFD ()
// provede reset softwaru na řadiči VFD {VFD.write (0x1B); // ESC VFD.write (0x49); // reset softwaru}
zrušit VFDnewline ()
// přesune kurzor na začátek dalšího řádku {VFD.write (0x0D); // návrat vozíku VFD.write (0x0A); // line feed}
neplatné VFDclearsceen ()
// přesune kurzor vlevo nahoře a vymaže zobrazení {VFD.write (0x0E); // vymazat displej VFD.write (0x0C); // form feed - kurzor vlevo nahoře}
neplatná jasnost VFD (vnitřní částka)
// nastavuje jas VFD - 25/50/75/100% // používá sekvence ESC {switch (amount) {case 25: VFD.write (0x1B); // ESC VFD.write (0x4C); // jas VFD.print (0); // 25% přerušení jasu; případ 50: VFD.write (0x1B); // ESC VFD.write (0x4C); // jas VFD.write (0x40); // 50% přerušení jasu; případ 75: VFD.write (0x1B); // ESC VFD.write (0x4C); // jas VFD.write (0x80); // 75% přerušení jasu; případ 100: VFD.write (0x1B); // ESC VFD.write (0x4C); // jas VFD.write (0xC0); // 100% jas}}
neplatné VFDchars ()
// procházet znaky pro vybrané písmo {for (int i = 21; i <256; i ++) {VFD.write (0x16); // podtržení kurzoru vypnuto VFD.write (i); zpoždění (100); }}
void moveCursor (byte byte)
// přesune kurzor - horní řádek je 0 ~ 39, spodní řádek je 40 ~ 79 // režim svislého posouvání musí být vypnut, pokud je použit {VFD.write (0x1B); // ESC VFD.write (0x48); // pohyb kurzoru VFD.write (pozice); // umístění}
prázdná smyčka ()
{VFD.write (0x16); // podtržení kurzoru mimo VFD.print ("Dobrý den, svět - první řádek."); // Můžete vypálit zpoždění textu (1000); VFDnewline (); VFD.print („Dobrý den, řada dva.“); zpoždění (1000); VFDclearsceen (); Jas VFD (25); VFD.print ("*** 25% jas ***"); zpoždění (1000); VFDclearsceen (); Jas VFD (50); VFD.print ("*** 50% jas ***"); zpoždění (1000); VFDclearsceen (); Jas VFD (75); VFD.print ("*** 75% jas ***"); zpoždění (1000); VFDclearsceen (); Jas VFD (100); VFD.print ("*** 100% jas ***"); zpoždění (1000); VFDclearsceen ();
VFDchars ();
VFDclearsceen ();
pro (int i = 0; i <80; i ++) {VFD.write (0x16); // podtržení kurzoru off moveCursor (i); VFD.print ("X"); zpoždění (100); moveCursor (i); VFD.print (""); } VFDclearsceen (); }
Doufáme, že vás to zaujalo a pomohlo.
Tento příspěvek vám přináší pmdway.com - vše pro výrobce a nadšence do elektroniky s bezplatnou dodávkou po celém světě.
Doporučuje:
Použití modulu TTP223 jako přepínače: 5 kroků
Používání modulu TTP223 jako přepínače: Tento návod se týká kapacitního dotykového modulu TTP223. Potřebujete pouze základní znalosti z elektroniky a programování arduina. Pokud máte nějaké dotazy nebo problémy, můžete mě kontaktovat na mém e -mailu: [email protected] . Zde je odkaz na video m
Použití hodinových modulů v reálném čase DS1307 a DS3231 s Arduino: 3 kroky
Použití hodinových modulů v reálném čase DS1307 a DS3231 s Arduinem: Stále dostáváme požadavky na to, jak používat moduly hodin reálného času DS1307 a DS3231 s Arduinem z různých zdrojů-toto je tedy první ze dvoudílného tutoriálu, jak je používat. Pro tento výukový program Arduino máme k dispozici dva moduly hodin v reálném čase
Hudebně reagující RGB LED pás s kódem - WS1228b - Použití modulu Arduino a mikrofonu: 11 kroků
Hudebně reagující RGB LED pás s kódem | WS1228b | Použití modulu Arduino a mikrofonu: Budování LED pásky WS1228B reagující na hudbu pomocí modulu Arduino a mikrofonu. Použité části: Senzor zvuku Arduino WS1228b s LED páskem, propojovací kabely 5V 5A
Jednoduchý měřič otáček za použití levných modulů: 8 kroků
Jednoduchý měřič otáček pomocí levných modulů: Jedná se o velmi zajímavý projekt, který vynaloží mnohem méně úsilí na vytvoření velmi jednoduchého měřiče otáček (v mém případě Round Per Seceond)
Použití příkazového modulu IRobot Create v systému Linux: 4 kroky
Použití příkazového modulu IRobot Create v systému Linux: Protože iRobot neposkytl uživatelům Linuxu způsob, jak používat příkazový modul, musel jsem na to přijít sám. Nebojte se, není to vůbec těžké. Vše, co musíte udělat, je spustit několik skriptů. Začněme, ano?