INHOUDSOPGAWE:

Die gebruik van ouer Noritake Itron VFD -modules: 7 stappe
Die gebruik van ouer Noritake Itron VFD -modules: 7 stappe

Video: Die gebruik van ouer Noritake Itron VFD -modules: 7 stappe

Video: Die gebruik van ouer Noritake Itron VFD -modules: 7 stappe
Video: Алек Аронин - Техника нанесения Speed емали керамики Noritake™ EX-3 2024, Julie
Anonim
Die gebruik van ouer Noritake Itron VFD -modules
Die gebruik van ouer Noritake Itron VFD -modules
Die gebruik van ouer Noritake Itron VFD -modules
Die gebruik van ouer Noritake Itron VFD -modules
Die gebruik van ouer Noritake Itron VFD -modules
Die gebruik van ouer Noritake Itron VFD -modules

Af en toe kom jy interessante e-posse op eBay af, van vriende of net in tweedehandse winkels. Een voorbeeld hiervan was 'n groot vakuum-fluoresserende display van Noritake Itron van 40 x 2 karakters uit 1994 (of vroeër) wat deur 'n kliënt oorgedra is.

Oorspronklik lyk dit nogal ingewikkeld, maar na 'n geruime tyd is die gegewensblaaie gevind en daar is 'n eenvoudige seriële koppelvlak gevind - en met 'n bietjie werk het ons dit laat werk, dus lees verder as u belangstel in klassieke VFD's of 'n soortgelyke eenheid het.

Stap 1:

Beeld
Beeld

Die seriële koppelvlak se baud -tempo word bepaal deur die jumper pads op die PCB.

Stap 2:

Beeld
Beeld

Om die tabel hierbo te vergelyk met die springers op ons module, gee ons 'n datasnelheid van 19200 bps sonder pariteit. Groot - ons kan maklik so 'n verbinding skep met 'n mikrobeheerder met 'n seriële uitset en 5V logiese vlakke; Vir ons voorbeelde gebruik ons 'n Arduino-versoenbare bord.

Stap 3:

Die aansluiting van die VFD is eenvoudig - sien die wit springers met die naam CN2 soos voorheen getoon. Pen 1 is 5V (u benodig 'n eksterne toevoer wat tot 700 mA kan bied), pen 2 na Arduino digitale pen 7, en pen 3 na Arduino en kragbron GND.

Ons gebruik Arduino D7 met sagteware in plaas van TX, sodat die skerm nie rommel vertoon as 'n skets opgelaai word nie. Dan is dit net eenvoudig om teks na die skerm te stuur, byvoorbeeld 'n vinnige demonstrasie skets:

// Werk met Noritake Itron VFD -modules - model CU40026SCPB -T20A #include SoftwareSerial VFD (6, 7); // RX, TX

leemte opstelling ()

{VFD.begin (19200); }

leemte lus ()

{VFD.print ("Hallo, wêreld. Dit is 'n Noritake VFD"); // U kan teks uitblaas deur {} terwyl (1); }

Stap 4:

Beeld
Beeld

Wat lei tot die volgende …

Stap 5:

Beeld
Beeld

As u nie lus is vir die kleur of intensiteit van die skerm nie, probeer dan Perspex bo -oor - byvoorbeeld …

Stap 6: Beheer van die skerm

Op hierdie stadium benodig u die datablad van die gegewensblad. Soos u voorheen gesien het, is die skryf van teks baie eenvoudig - gebruik net.print -funksies. U wil egter individuele karakters sowel as spesiale opdragte stuur om aspekte van die skerm te beheer. Dit word in die gegewensblad uiteengesit - sien die tabelle "Sagtewareopdragte" en "Karakterletters".

As u enkele opdragte moet stuur - byvoorbeeld 'duidelike vertoning' wat 0x0E is, gebruik 'n.write -opdrag, soos:

VFD.skryf (0x0E); // duidelike vertoning

Sommige opdragte is in die formaat van ontsnappingskodes (onthou u dit?), Sodat u ESC dan die volgende byte moet stuur, byvoorbeeld om die helderheid na 50%te verander:

VFD.skryf (0x1B); // ESC VFD.write (0x4C); // helderheid VFD.write (0x40); // 50% helderheid

Gewapen met die kennis en die gegewensblaaie, kan u nou al die opdragte uitvoer. Volgens die gegewensblad is dit moontlik om lettertipes te verander, ongeag die hardeware -trui of opdrag wat ons probeer het, dit sou nie afwyk van die Japannese katakana -lettertipe nie. Jou skerm kan wissel. As u die funksie "skryfprioriteit skryf" gebruik, let dan op die gegewensblad met betrekking tot die verlengde 'besige' tyd deur die volgende skryfwerk na die skerm met 'n millisekonde uit te stel.

Stap 7: Alles saamvoeg

In plaas daarvan om elke moontlike opdrag te verduidelik, het ek die algemene in die gedokumenteerde funksies in die onderstaande demonstrasie -skets geplaas, waarna 'n vinnige video van die skets in werking is.

// Werk met Noritake Itron VFD -modules - model CU40026SCPB -T20A // John Boxall 2013

#insluit

SoftwareSerial VFD (6, 7); // rx, tx

leemte opstelling ()

{VFD.begin (19200); // stel spoed in vir sagteware -seriële poort resetVFD (); VFDclearsceen (); // VFD.write (0x12); // vertikale rolmodus (aan)}

leemte herstel VFD ()

// voer 'n sagteware -terugstelling uit op die VFD -beheerder {VFD.write (0x1B); // ESC VFD.write (0x49); // sagteware herstel}

nietig VFDnewline ()

// beweeg die wyser na die begin van die volgende reël {VFD.write (0x0D); // vervoeropgawe VFD.write (0x0A); // lyn voer }

nietig VFDclearsceen ()

// skuif die wyser na links bo en maak die skerm {VFD.write (0x0E) skoon; // duidelike vertoning VFD.write (0x0C); // vormvoer - wyser na links bo}

leegte VFD helderheid (int bedrag)

// stel VFD -helderheid in - 25/50/75/100% // gebruik ESC -rye {switch (hoeveelheid) {case 25: VFD.write (0x1B); // ESC VFD.write (0x4C); // helderheid VFD.print (0); // 25% helderheidsbreuk; saak 50: VFD.write (0x1B); // ESC VFD.write (0x4C); // helderheid VFD.write (0x40); // 50% helderheidsbreuk; saak 75: VFD.write (0x1B); // ESC VFD.write (0x4C); // helderheid VFD.write (0x80); // 75% helderheidsbreuk; saak 100: VFD.write (0x1B); // ESC VFD.write (0x4C); // helderheid VFD.write (0xC0); // 100% helderheid}}

nietig VFDchars ()

// loop deur karakters vir geselekteerde lettertipe {for (int i = 21; i <256; i ++) {VFD.write (0x16); // onderstreep wyser van VFD.write (i) af; vertraging (100); }}

nietige moveCursor (greep posisie)

// beweeg die wyser - boonste ry is 0 ~ 39, onderste ry is 40 ~ 79 // vertikale rolmodus moet afgeskakel word as dit gebruik word {VFD.write (0x1B); // ESC VFD.write (0x48); // skuif wyser VFD.write (posisie); // ligging}

leemte lus ()

{VFD.write (0x16); // onderstreep wyser van VFD.print af ("Hallo, wêreld - reël een."); // U kan teksvertraging (1000) ontplof; VFDnewline (); VFD.print ("Hallo, wêreldreël twee."); vertraging (1000); VFDclearsceen (); VFD helderheid (25); VFD.print ("*** 25% helderheid ***"); vertraging (1000); VFDclearsceen (); VFD -helderheid (50); VFD.print ("*** 50% helderheid ***"); vertraging (1000); VFDclearsceen (); VFD helderheid (75); VFD.print ("*** 75% helderheid ***"); vertraging (1000); VFDclearsceen (); VFD helderheid (100); VFD.print ("*** 100% helderheid ***"); vertraging (1000); VFDclearsceen ();

VFDchars ();

VFDclearsceen ();

vir (int i = 0; i <80; i ++) {VFD.write (0x16); // onderstreep wyser van moveCursor (i) af; VFD.print ("X"); vertraging (100); moveCursor (i); VFD.print (""); } VFDclearsceen (); }

Ons hoop dat u dit interessant en nuttig gevind het.

Hierdie pos word deur pmdway.com aan u gebring - alles vir vervaardigers en elektronika -entoesiaste, met gratis aflewering wêreldwyd.

Aanbeveel: