Kazalo:
2024 Avtor: John Day | [email protected]. Nazadnje spremenjeno: 2024-01-30 12:04
Vedno znova naletite na zanimive dele na ebayu, od prijateljev ali pa samo pohajkovanje po rabljenih trgovinah. Primer tega je bil ogromen vakuumsko-fluorescenčni zaslon Noritake Itron 40 x 2 znakov iz leta 1994 (ali prej), ki ga je posredoval odjemalec.
Sprva je bilo videti precej zapleteno, vendar so po nekaj časa našli podatkovne liste in ugotovili, da ima preprost serijski vmesnik - in z malo dela smo to uspeli, zato preberite, če vas zanimajo klasični VFD -ji ali imajo podobno enoto.
Korak 1:
Hitrost prenosa zaporednega vmesnika je določena s skakalnimi ploščicami na tiskanem vezju.
2. korak:
Če primerjamo zgornjo tabelo s skakalci v našem modulu, dobimo hitrost podatkov 19200 b / s brez parnosti. Odlično - takšno povezavo zlahka ustvarimo z mikrokrmilnikom s serijskim izhodom in 5V logičnimi nivoji; za naše primere bomo uporabili ploščo, združljivo z Arduino.
3. korak:
Ožičenje VFD je preprosto - glejte bele mostičke z oznako CN2, kot je prikazano prej. Pin 1 je 5V (potrebujete zunanje napajanje, ki lahko ponudi do 700 mA), pin 2 na Arduino digitalni pin 7 in pin 3 na Arduino in napajalnik GND.
Arduino D7 uporabljamo s serijsko programsko opremo namesto TX, tako da zaslon ne prikazuje smeti, ko se nalaga skica. Potem gre samo za pošiljanje besedila na zaslon, na primer tukaj je hitra predstavitvena skica:
// Delo z moduli Noritake Itron VFD - model CU40026SCPB -T20A #include SoftwareSerial VFD (6, 7); // RX, TX
void setup ()
{VFD.začetek (19200); }
void loop ()
{VFD.print ("Pozdravljeni, svet. To je VFD Noritake"); // Besedilo lahko razstrelite do {} while (1); }
4. korak:
Kar ima za posledico naslednje…
5. korak:
Če niste navdušeni nad barvo ali intenzivnostjo zaslona, poskusite nekaj Perspexa na vrhu - na primer …
6. korak: Upravljanje zaslona
Na tej točki boste potrebovali podatkovni list s podatkovnim listom. Kot ste že videli, je pisanje besedila zelo preprosto - uporabite samo funkcije.print. Vendar boste morda želeli poslati posamezne znake in posebne ukaze za nadzor vidikov zaslona. Ti so opisani v podatkovnem listu - glejte tabeli »Ukazi programske opreme« in »Pisave znakov«.
Če morate poslati posamezne ukaze - na primer »clear display«, ki je 0x0E, uporabite ukaz.write, na primer:
VFD.write (0x0E); // čist prikaz
Nekateri ukazi so v obliki kod za izhod v sili (se jih spomnite?), Zato morate poslati ESC in nato naslednji bajt, na primer za spremembo svetlosti na 50%:
VFD.write (0x1B); // ESC VFD.write (0x4C); // svetlost VFD.write (0x40); // 50% svetlost
S tem znanjem in podatkovnimi listi lahko zdaj izvajate vse ukaze. Glede na podatkovni list je mogoče spremeniti pisave, vendar ne glede na to, kateri strojni mostiček ali ukaz smo poskusili, se ne bi premaknil iz japonske pisave katakana. Vaš zaslon se lahko razlikuje. Če uporabljate funkcijo "prednostnega zapisa zaslona", upoštevajte podatkovni list glede na podaljšani čas "zasedenosti", tako da poznejše zapise na zaslon odložite za milisekundo.
7. korak: Vse skupaj
Namesto da bi razložil vsak možen ukaz, sem v spodaj prikazano skico spravil običajne znotraj dokumentiranih funkcij, ki jim sledi hiter video posnetka, ki deluje.
// Delo z moduli VFD Noritake Itron - model CU40026SCPB -T20A // John Boxall 2013
#vključi
SoftwareSerial VFD (6, 7); // rx, tx
void setup ()
{VFD.začetek (19200); // nastavite hitrost za ponastavitev serijskih vrat programske opremeVFD (); VFDclearsceen (); // VFD.write (0x12); // način navpičnega drsenja (vklopljeno)}
ponastavitev voidVFD ()
// izvede ponastavitev programske opreme na krmilniku VFD {VFD.write (0x1B); // ESC VFD.write (0x49); // ponastavitev programske opreme}
void VFDnewline ()
// premakne kazalec na začetek naslednje vrstice {VFD.write (0x0D); // vrnitev nosilca VFD.write (0x0A); // vir vrstic}
void VFDclearsceen ()
// premakne kazalec v zgornji levi del in počisti prikaz {VFD.write (0x0E); // počisti prikaz VFD.write (0x0C); // vir obrazca - kazalec zgoraj levo}
void VFDsvetlost (int znesek)
// nastavi svetlost VFD - 25/50/75/100% // uporablja zaporedja ESC {switch (količina) {primer 25: VFD.write (0x1B); // ESC VFD.write (0x4C); // svetlost VFD.print (0); // 25% prekinitev svetlosti; primer 50: VFD.write (0x1B); // ESC VFD.write (0x4C); // svetlost VFD.write (0x40); // 50% prekinitev svetlosti; primer 75: VFD.write (0x1B); // ESC VFD.write (0x4C); // svetlost VFD.write (0x80); // 75% prekinitev svetlosti; primer 100: VFD.write (0x1B); // ESC VFD.write (0x4C); // svetlost VFD.write (0xC0); // 100% svetlost}}
void VFDchars ()
// teče skozi znake za izbrano pisavo {for (int i = 21; i <256; i ++) {VFD.write (0x16); // podčrtaj kazalec izklopljen VFD.write (i); zamuda (100); }}
void moveCursor (položaj bajtov)
// premakne kazalec - zgornja vrstica je 0 ~ 39, spodnja vrstica je 40 ~ 79 // način navpičnega drsenja mora biti izklopljen, če se uporablja {VFD.write (0x1B); // ESC VFD.write (0x48); // premakni kazalec VFD.write (položaj); // lokacija}
void loop ()
{VFD.write (0x16); // podčrtaj kazalec izklopljen VFD.print ("Pozdravljeni, svet - prva vrstica."); // Lahko izklopite zakasnitev besedila (1000); VFDnewline (); VFD.print ("Pozdravljeni, svet - druga vrstica."); zamuda (1000); VFDclearsceen (); Svetlost VFD (25); VFD.print ("*** 25% svetlost ***"); zamuda (1000); VFDclearsceen (); Svetlost VFD (50); VFD.print ("*** 50% svetlost ***"); zamuda (1000); VFDclearsceen (); Svetlost VFD (75); VFD.print ("*** 75% svetlost ***"); zamuda (1000); VFDclearsceen (); Svetlost VFD (100); VFD.print ("*** 100% svetlost ***"); zamuda (1000); VFDclearsceen ();
VFDchars ();
VFDclearsceen ();
for (int i = 0; i <80; i ++) {VFD.write (0x16); // podčrtaj kurzor off moveCursor (i); VFD.print ("X"); zamuda (100); moveCursor (i); VFD.print (""); } VFDclearsceen (); }
Upamo, da vam je bilo to zanimivo in koristno.
To objavo vam ponuja pmdway.com - vse za ustvarjalce in navdušence nad elektroniko z brezplačno dostavo po vsem svetu.
Priporočena:
Stroj za rehabilitacijo starejših: 4 koraki
Stroj za rehabilitacijo starejših: Ta stroj se uporablja za pomoč starejšim ljudem, ki so želeli obnoviti svojo reakcijsko sposobnost. Ko se ljudje starajo, se njihova reakcijska sposobnost poslabša. Ta stroj lahko tem ljudem pomaga pri rehabilitaciji njihovih reakcijskih sposobnosti
Izjemno preprost način, kako začeti z avtomatizacijo doma z uporabo DIY modulov: 6 korakov
Izjemno preprost način, kako začeti z avtomatizacijo doma z uporabo DIY modulov: Bil sem prijetno presenečen, ko sem se odločil, da bom domačemu asistentu poskušal dodati nekaj senzorjev DIY. Uporaba ESPHome je izjemno preprosta in v tem prispevku se bomo naučili, kako upravljati pin GPIO in tudi doseči temperaturo & podatki o vlažnosti iz brezžičnega n
Uporaba modulov ure v realnem času DS1307 in DS3231 z Arduinom: 3 koraki
Uporaba modulov ure v realnem času DS1307 in DS3231 z Arduinom: Nenehno prejemamo zahteve o uporabi modulov ure v realnem času DS1307 in DS3231 z Arduinom iz različnih virov-zato je to prvi od dveh delov, kako jih uporabljati. Za to vadnico Arduino imamo na voljo dva modula ure v realnem času
Zgradite svoj prvi IOT z uporabo Arduina brez dodatnih modulov: 5 korakov (s slikami)
Ustvarite svoj prvi IOT z uporabo Arduina brez dodatnih modulov: Svet je vsak dan pametnejši in največji razlog za to je razvoj pametne tehnologije. Kot tehnološki navdušenec ste zagotovo že slišali za izraz IOT, ki pomeni internet stvari. Internet stvari pomeni nadzor in hranjenje
Kako pravilno izmeriti porabo energije brezžičnih komunikacijskih modulov v dobi nizke porabe energije?: 6 korakov
Kako pravilno izmeriti porabo energije brezžičnih komunikacijskih modulov v dobi nizke porabe energije ?: Nizka poraba energije je izjemno pomemben koncept v internetu stvari. Večino vozlišč IoT je treba napajati iz baterij. Samo s pravilnim merjenjem porabe energije brezžičnega modula lahko natančno ocenimo, koliko baterije porabim