Taula de continguts:

Ús de mòduls VFD Noritake Itron més antics: 7 passos
Ús de mòduls VFD Noritake Itron més antics: 7 passos

Vídeo: Ús de mòduls VFD Noritake Itron més antics: 7 passos

Vídeo: Ús de mòduls VFD Noritake Itron més antics: 7 passos
Vídeo: Noritake VFD: GU256X128C-D903M Water and Touch Demo 2024, De novembre
Anonim
Ús de mòduls VFD Noritake Itron més antics
Ús de mòduls VFD Noritake Itron més antics
Ús de mòduls VFD Noritake Itron més antics
Ús de mòduls VFD Noritake Itron més antics
Ús de mòduls VFD Noritake Itron més antics
Ús de mòduls VFD Noritake Itron més antics

De tant en tant trobes parts interessants a ebay, d’amics o simplement arrelant a les botigues de segona mà. Un exemple d'això va ser una enorme pantalla fluorescente al buit de 40 x 2 caràcters Noritake Itron del 1994 (o anteriors) que es va transmetre a un client.

Originalment semblava bastant complex, però després de passar un temps es van trobar les fulles de dades i es va descobrir que tenia una interfície sèrie senzilla, i amb una mica de treball ho hem fet funcionant, així que seguiu llegint si us interessen els VFD clàssics. o tenir una unitat similar.

Pas 1:

Imatge
Imatge

La velocitat en bauds de la interfície sèrie està determinada pels coixinets de pont del PCB.

Pas 2:

Imatge
Imatge

Per tant, comparar la taula anterior amb els ponts del nostre mòdul ens proporciona una velocitat de dades de 19200 bps sense paritat. Genial: podem crear fàcilment aquesta connexió amb un microcontrolador amb sortida de sèrie i nivells lògics de 5V; per als nostres exemples, farem servir una placa compatible amb Arduino.

Pas 3:

El cablejat del VFD és senzill: vegeu els ponts blancs etiquetats CN2 com es mostra anteriorment. El pin 1 és de 5 V (necessiteu un subministrament extern que pugui oferir fins a 700 mA), el pin 2 al pin digital 7 d’Arduino i el pin 3 a Arduino i la font d’alimentació GND.

Utilitzem Arduino D7 amb programari de sèrie en lloc de TX perquè la pantalla no mostri escombraries quan es penja un esbós. Aleshores es tracta d’enviar simplement text a la pantalla, per exemple, aquí teniu un esbós de demostració ràpida:

// Treballar amb mòduls VFD Noritake Itron - model CU40026SCPB-T20A #include SoftwareSerial VFD (6, 7); // RX, TX

configuració nul·la ()

{VFD.begin (19200); }

bucle buit ()

{VFD.print ("Hola, món. Això és un Noritake VFD"); // Podeu esborrar text do {} while (1); }

Pas 4:

Imatge
Imatge

Què resulta amb el següent …

Pas 5:

Imatge
Imatge

Si no us interessa el color ni la intensitat de la pantalla, proveu amb Perspex a la part superior, per exemple …

Pas 6: controlar la pantalla

En aquest moment necessitareu el full de dades del full de dades. Com heu vist anteriorment, escriure text és molt senzill: només heu d’utilitzar funcions.print. Tanmateix, és possible que vulgueu enviar caràcters individuals, així com ordres especials per controlar aspectes de la pantalla. Aquests es descriuen al full de dades: vegeu les taules "Ordres de programari" i "Tipus de lletra de caràcters".

Si necessiteu enviar ordres individuals, per exemple, "neteja la pantalla" que és 0x0E, utilitzeu una ordre.write, com ara:

VFD.write (0x0E); // visualització neta

Algunes ordres tenen el format de codis d’escapament (els recordeu?), De manera que heu d’enviar ESC al següent byte, per exemple, per canviar la brillantor al 50%:

VFD.write (0x1B); // ESC VFD.write (0x4C); // brillantor VFD.write (0x40); // 50% de brillantor

Armat amb aquest coneixement i els fulls de dades, ara podeu executar totes les ordres. Segons el full de dades, és possible canviar els tipus de lletra, però, independentment del comandament o el comandament de maquinari que hàgim provat, no canviava del tipus de lletra japonès katakana. La vostra pantalla pot variar. Si utilitzeu la funció d'escriptura amb prioritat de pantalla, tingueu en compte el full de dades pel que fa al temps "ocupat" ampliat, retardant les escriptures posteriors a la pantalla un mil·lisegon.

Pas 7: ajuntar-ho tot

En lloc d’explicar totes les ordres possibles, he posat les comunes dins de les funcions documentades a l’esbós de demostració següent, que és seguit d’un vídeo ràpid de l’esbós en funcionament.

// Treballar amb mòduls VFD Noritake Itron - model CU40026SCPB-T20A // John Boxall 2013

#incloure

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

configuració nul·la ()

{VFD.begin (19200); // estableix la velocitat del reset del port sèrie del programari VFD (); VFDclearsceen (); // VFD.write (0x12); // mode de desplaçament vertical (activat)}

restablir nul VFD ()

// realitza un restabliment de programari al controlador VFD {VFD.write (0x1B); // ESC VFD.write (0x49); // restabliment del programari}

void VFDnewline ()

// mou el cursor a l'inici de la següent línia {VFD.write (0x0D); // retorn de carro VFD.write (0x0A); // feed de línia}

void VFDclearsceen ()

// mou el cursor a la part superior esquerra i neteja la pantalla {VFD.write (0x0E); // esborra la pantalla VFD.write (0x0C); // feed de formularis - cursor a la part superior esquerra}

buid VFDbrightness (quantitat int)

// estableix la brillantor VFD: 25/50/75/100% // utilitza seqüències ESC {commutador (quantitat) {cas 25: VFD.write (0x1B); // ESC VFD.write (0x4C); // brillantor VFD.print (0); // Trencament de la brillantor del 25%; cas 50: VFD.write (0x1B); // ESC VFD.write (0x4C); // brillantor VFD.write (0x40); // 50% de brillantor; cas 75: VFD.write (0x1B); // ESC VFD.write (0x4C); // brillantor VFD.write (0x80); // 75% de brillantor; cas 100: VFD.write (0x1B); // ESC VFD.write (0x4C); // brillantor VFD.write (0xC0); // 100% de brillantor}}

void VFDchars ()

// córrer pels caràcters del tipus de lletra seleccionat {per (int i = 21; i <256; i ++) {VFD.write (0x16); // subratlla el cursor desactivat VFD.write (i); retard (100); }}

void moveCursor (posició de byte)

// mou el cursor: la fila superior és 0 ~ 39, la fila inferior és 40 ~ 79 // El mode de desplaçament vertical s'ha d'apagar si s'utilitza {VFD.write (0x1B); // ESC VFD.write (0x48); // mou el cursor VFD.write (posició); // ubicació }

bucle buit ()

{VFD.write (0x16); // subratlla el cursor desactivat VFD.print ("Hola, primer món."); // Podeu eliminar el retard de text (1000); VFDnewline (); VFD.print ("Hola, segona línia mundial"); retard (1000); VFDclearsceen (); VFDbrightness (25); VFD.print ("*** 25% de brillantor ***"); retard (1000); VFDclearsceen (); VFDbrillness (50); VFD.print ("*** 50% de brillantor ***"); retard (1000); VFDclearsceen (); VFDbrillness (75); VFD.print ("*** 75% de brillantor ***"); retard (1000); VFDclearsceen (); VFDbrillness (100); VFD.print ("*** 100% de brillantor ***"); retard (1000); VFDclearsceen ();

VFDchars ();

VFDclearsceen ();

per a (int i = 0; i <80; i ++) {VFD.write (0x16); // subratlla el cursor off moveCursor (i); VFD.print ("X"); retard (100); moveCursor (i); VFD.print (""); } VFDclearsceen (); }

Esperem que us sigui útil i interessant.

Aquest article us el proporciona pmdway.com: tot per a fabricants i aficionats a l'electrònica, amb lliurament gratuït a tot el món.

Recomanat: