Sadržaj:
- Korak 1:
- Korak 2:
- Korak 3:
- Korak 4:
- Korak 5:
- Korak 6: Upravljanje ekranom
- Korak 7: Sastavite sve zajedno
Video: Korištenje starijih Noritake Itron VFD modula: 7 koraka
2024 Autor: John Day | [email protected]. Zadnja izmjena: 2024-01-30 08:07
S vremena na vrijeme naiđete na zanimljive dijelove na ebayu, od prijatelja ili samo lutate po rabljenim trgovinama. Jedan primjer za to bio je ogroman Noritake Itron 40 x 2 karakterski vakuum-fluorescentni ekran iz 1994. (ili ranije) koji je proslijeđen od klijenta.
U početku je izgledalo prilično složeno, no nakon što su proveli neko vrijeme pronađeni su listovi s podacima i otkriveno je da ima jednostavno serijsko sučelje - i uz malo truda uspjeli smo to učiniti, pa čitajte dalje ako vas zanimaju klasični VFD -ovi ili imaju sličnu jedinicu.
Korak 1:
Brzina prijenosa serijskog sučelja određena je skakačkim jastučićima na PCB -u.
Korak 2:
Usporedbom gornje tablice sa skakačima na našem modulu dobivamo brzinu prijenosa podataka od 19200 bps bez pariteta. Odlično - takvu vezu lako možemo stvoriti pomoću mikrokontrolera sa serijskim izlazom i 5V logičkim nivoima; za naše primjere koristit ćemo Arduino kompatibilnu ploču.
Korak 3:
Ožičenje VFD -a je jednostavno - pogledajte bijele kratkospojnike s oznakom CN2 kao što je prethodno prikazano. Pin 1 je 5V (potrebno vam je vanjsko napajanje koje može ponuditi do 700 mA), pin 2 na Arduino digitalni pin 7 i pin 3 na Arduino i GND za napajanje.
Koristimo Arduino D7 sa softverskom serijom umjesto TX -a tako da zaslon ne prikazuje smeće prilikom postavljanja skice. Zatim je u pitanju jednostavno slanje teksta na ekran, na primjer evo kratke demonstracijske skice:
// Rad sa Noritake Itron VFD modulima - model CU40026SCPB -T20A #include SoftwareSerial VFD (6, 7); // RX, TX
void setup ()
{VFD.begin (19200); }
void loop ()
{VFD.print ("Zdravo, svijete. Ovo je Noritake VFD"); // Možete minirati tekst do {} while (1); }
Korak 4:
Što rezultira sljedećim…
Korak 5:
Ako niste zainteresirani za boju ili intenzitet prikaza, isprobajte Perspex odozgo - na primjer …
Korak 6: Upravljanje ekranom
U ovom trenutku trebat će vam podatkovni list s podacima. Kao što ste već vidjeli, pisanje teksta je vrlo jednostavno - samo koristite.print funkcije. Međutim, možda ćete htjeti poslati pojedinačne znakove, kao i posebne naredbe za kontrolu aspekata prikaza. Oni su navedeni u listu s podacima - pogledajte tablice "Softverske naredbe" i "Fontovi znakova".
Ako trebate poslati pojedinačne komande - na primjer “clear display” koji je 0x0E, koristite naredbu.write, poput:
VFD.write (0x0E); // jasan prikaz
Neke naredbe su u formatu kodova za izbjegavanje (sjećate li se njih?) Pa morate poslati ESC, a zatim sljedeći bajt, na primjer za promjenu svjetline na 50%:
VFD.write (0x1B); // ESC VFD.write (0x4C); // svjetlina VFD.write (0x40); // 50% svjetline
Naoružani tim znanjem i podacima možete sada izvršavati sve naredbe. Prema podacima iz lista, moguće je promijeniti fontove, međutim, bez obzira na hardverski skakač ili naredbu koju smo pokušali, ne bi se pomaknuo od japanskog katakana fonta. Vaš ekran može varirati. Ako koristite funkciju “screen priority write”, obratite pažnju na tehnički list s obzirom na produženo vrijeme “busy” odgađanjem naknadnih upisivanja na zaslon za milisekundu.
Korak 7: Sastavite sve zajedno
Umjesto da objasnim svaku moguću naredbu, stavio sam uobičajene unutar dokumentiranih funkcija u demonstracijsku skicu ispod, nakon čega slijedi kratki video zapis skice u funkciji.
// Rad s Noritake Itron VFD modulima - model CU40026SCPB -T20A // John Boxall 2013
#include
SoftwareSerial VFD (6, 7); // rx, tx
void setup ()
{VFD.begin (19200); // postavljanje brzine za resetiranje serijskog porta softveraVFD (); VFDclearsceen (); // VFD.write (0x12); // vertikalni način pomicanja (uključeno)}
poništavanje praznineVFD ()
// vrši resetovanje softvera na VFD kontroleru {VFD.write (0x1B); // ESC VFD.write (0x49); // resetovanje softvera}
void VFDnewline ()
// pomiče kursor na početak sljedećeg retka {VFD.write (0x0D); // carriage return VFD.write (0x0A); // red linija}
void VFDclearsceen ()
// pomera kursor gore levo i briše prikaz {VFD.write (0x0E); // brisanje prikaza VFD.write (0x0C); // sažetak obrasca - kursor gore gore -lijevo}
praznina VFDsvjetlina (int iznos)
// postavlja svjetlinu VFD -a - 25/50/75/100% // koristi ESC sekvence {switch (amount) {case 25: VFD.write (0x1B); // ESC VFD.write (0x4C); // svjetlina VFD.print (0); // 25% prekid svjetline; slučaj 50: VFD.write (0x1B); // ESC VFD.write (0x4C); // svjetlina VFD.write (0x40); // 50% prekid svjetline; slučaj 75: VFD.write (0x1B); // ESC VFD.write (0x4C); // svjetlina VFD.write (0x80); // 75% prekid svjetline; slučaj 100: VFD.write (0x1B); // ESC VFD.write (0x4C); // svjetlina VFD.write (0xC0); // 100% svjetline}}
void VFDchars ()
// prelistavanje znakova za odabrani font {for (int i = 21; i <256; i ++) {VFD.write (0x16); // podcrtavanje kursora isključeno VFD.write (i); kašnjenje (100); }}
void moveCursor (položaj bajta)
// pomera kursor - gornji red je 0 ~ 39, donji red je 40 ~ 79 // režim vertikalnog pomeranja mora biti isključen ako se koristi {VFD.write (0x1B); // ESC VFD.write (0x48); // pomicanje kursora VFD.write (position); // lokacija}
void loop ()
{VFD.write (0x16); // podcrtavanje kursora isključeno VFD.print ("Zdravo, svijet - prva linija."); // Možete minirati kašnjenje teksta (1000); VFDnewline (); VFD.print ("Zdravo, svijet - druga linija."); kašnjenje (1000); VFDclearsceen (); VFDsvjetlina (25); VFD.print ("*** 25% svjetline ***"); kašnjenje (1000); VFDclearsceen (); VFDsvjetlina (50); VFD.print ("*** 50% svjetline ***"); kašnjenje (1000); VFDclearsceen (); VFDsvjetlina (75); VFD.print ("*** 75% svjetline ***"); kašnjenje (1000); VFDclearsceen (); VFDsvjetlina (100); VFD.print ("*** 100% svjetline ***"); kašnjenje (1000); VFDclearsceen ();
VFDchars ();
VFDclearsceen ();
for (int i = 0; i <80; i ++) {VFD.write (0x16); // podcrtavanje kursora isključeno moveCursor (i); VFD.print ("X"); kašnjenje (100); moveCursor (i); VFD.print (""); } VFDclearsceen (); }
Nadamo se da vam je ovo bilo zanimljivo i korisno.
Ovaj post donosi vam pmdway.com - sve za proizvođače i ljubitelje elektronike, uz besplatnu dostavu širom svijeta.
Preporučuje se:
Mašina za rehabilitaciju starijih osoba: 4 koraka
Mašina za rehabilitaciju starijih osoba: Ova mašina se koristi za pomoć starijim osobama koje su željele rehabilitirati svoje reakcije. Kad ljudi odrastu, njihova reakcijska sposobnost će se pogoršati. Ova mašina može pomoći tim ljudima da obnove svoje reakcije
Korištenje TTP223 modula kao prekidača: 5 koraka
Korištenje TTP223 modula kao prekidača: Ovo uputstvo govori o kapacitivnom modulu dodira TTP223. Sve što trebate je osnovno znanje o elektronici i arduino programiranju. Ako imate bilo kakvih pitanja ili problema, možete me kontaktirati na moju poštu: [email protected] . Ovdje je link do videa m
Korištenje DS1307 i DS3231 modula sata u stvarnom vremenu s Arduinom: 3 koraka
Korištenje DS1307 i DS3231 modula satova u stvarnom vremenu s Arduinom: Stalno dobivamo zahtjeve o tome kako koristiti module satova u stvarnom vremenu DS1307 i DS3231 s Arduinom iz različitih izvora-pa je ovo prvi od dva dijela vodiča o tome kako ih koristiti. Za ovaj Arduino vodič imamo dva modula sata u stvarnom vremenu
I2C / IIC LCD ekran - Upotreba SPI LCD -a za I2C LCD ekran Korištenje SPI do IIC modula s Arduinom: 5 koraka
I2C / IIC LCD ekran | Upotrijebite SPI LCD na I2C LCD zaslonu Korištenje SPI na IIC modula s Arduinom: Zdravo momci, budući da normalni SPI LCD 1602 ima previše žica za povezivanje pa je vrlo teško povezati ga s arduinom, ali na tržištu postoji jedan modul koji može pretvorite SPI zaslon u IIC zaslon pa morate spojiti samo 4 žice
Muzički reaktivna RGB LED traka sa kodom - WS1228b - Korištenje modula Arduino i mikrofona: 11 koraka
Muzički reaktivna RGB LED traka sa kodom | WS1228b | Korištenje Arduino i mikrofonskog modula: Izrada LED trake koja reagira na glazbu pomoću Arduino i modula mikrofona. Korišteni dijelovi: Arduino WS1228b Led traka Zvučni senzor Breadboard kratkospojnici 5V 5A napajanje