Sommario:

Utilizzo dei vecchi moduli VFD Noritake Itron: 7 passaggi
Utilizzo dei vecchi moduli VFD Noritake Itron: 7 passaggi

Video: Utilizzo dei vecchi moduli VFD Noritake Itron: 7 passaggi

Video: Utilizzo dei vecchi moduli VFD Noritake Itron: 7 passaggi
Video: How to Make an Epic Control Box! Vintage Machine gets even more Awesome? 2024, Luglio
Anonim
Utilizzo dei vecchi moduli VFD Noritake Itron
Utilizzo dei vecchi moduli VFD Noritake Itron
Utilizzo dei moduli VFD Noritake Itron precedenti
Utilizzo dei moduli VFD Noritake Itron precedenti
Utilizzo dei vecchi moduli VFD Noritake Itron
Utilizzo dei vecchi moduli VFD Noritake Itron

Di tanto in tanto ti imbatti in parti interessanti su ebay, da amici o semplicemente rovistando nei negozi di seconda mano. Un esempio di ciò è stato un enorme display fluorescente sotto vuoto Noritake Itron 40 x 2 caratteri del 1994 (o prima) che è stato trasmesso da un cliente.

Originariamente sembrava piuttosto complesso, tuttavia dopo aver trascorso un po' di tempo sono state trovate le schede tecniche e si è scoperto che aveva una semplice interfaccia seriale - e con un po' di lavoro l'abbiamo fatto funzionare, quindi continua a leggere se sei interessato ai classici VFD o avere un'unità simile.

Passo 1:

Immagine
Immagine

La velocità di trasmissione dell'interfaccia seriale è determinata dai ponticelli sul PCB.

Passo 2:

Immagine
Immagine

Quindi, confrontando la tabella sopra con i jumper sul nostro modulo, otteniamo una velocità dati di 19200 bps senza parità. Ottimo: possiamo facilmente creare una connessione del genere con un microcontrollore con un'uscita seriale e livelli logici a 5V; per i nostri esempi useremo una scheda compatibile con Arduino.

Passaggio 3:

Il cablaggio del VFD è semplice: vedere i ponticelli bianchi etichettati CN2 come mostrato in precedenza. Il pin 1 è 5V (è necessario un alimentatore esterno che possa offrire fino a 700 mA), il pin 2 al pin digitale Arduino 7 e il pin 3 ad Arduino e alimentazione GND.

Usiamo Arduino D7 con seriale software invece di TX in modo che il display non visualizzi spazzatura quando viene caricato uno schizzo. Quindi si tratta semplicemente di inviare del testo al display, ad esempio ecco un rapido schizzo dimostrativo:

// Utilizzo dei moduli VFD Noritake Itron - modello CU40026SCPB-T20A #include SoftwareSerial VFD(6, 7); // RX, TX

configurazione nulla()

{ VFD.begin(19200); }

ciclo vuoto()

{ VFD.print("Ciao, mondo. Questo è un VFD Noritake "); // Puoi far saltare il testo do {} while (1); }

Passaggio 4:

Immagine
Immagine

Che risulta con il seguente…

Passaggio 5:

Immagine
Immagine

Se non ti piace il colore o l'intensità del display, prova un po' di Perspex sopra le righe, ad esempio…

Passaggio 6: controllo del display

A questo punto ti servirà la scheda tecnica. Come hai visto in precedenza, scrivere del testo è molto semplice: basta usare le funzioni.print. Tuttavia potresti voler inviare singoli caratteri, oltre a comandi speciali per controllare aspetti del display. Questi sono descritti nella scheda tecnica - vedere le tabelle "Comandi software" e "Caratteri di carattere".

Se devi inviare singoli comandi, ad esempio "clear display" che è 0x0E, usa un comando.write, come:

VFD.write(0x0E); // display chiaro

Alcuni comandi sono nel formato dei codici di escape (ricordate quelli?) quindi è necessario inviare ESC quindi il seguente byte, ad esempio per cambiare la luminosità al 50%:

VFD.write(0x1B); // ESC VFD.write(0x4C); // luminosità VFD.write(0x40); // 50% di luminosità

Armati di quella conoscenza e delle schede tecniche, ora puoi eseguire tutti i comandi. Secondo la scheda tecnica è possibile cambiare i caratteri, tuttavia, indipendentemente dal jumper hardware o dal comando che abbiamo provato, non si sposterebbe dal carattere katakana giapponese. Il tuo schermo può variare. Se si utilizza la funzione “scrittura priorità schermo” prestare attenzione alla scheda tecnica rispetto al tempo “occupato” esteso ritardando di un millisecondo le successive scritture sul display.

Passaggio 7: mettere tutto insieme

Invece di spiegare ogni possibile comando, ho inserito quelli comuni all'interno delle funzioni documentate nello schizzo dimostrativo di seguito, seguito da un breve video dello schizzo in funzione.

// Utilizzo dei moduli VFD Noritake Itron - modello CU40026SCPB-T20A// John Boxall 2013

#includere

SoftwareVFD seriale(6, 7); // rx, tx

configurazione nulla()

{ VFD.begin(19200); // imposta la velocità per la porta seriale del software resetVFD(); VFD clear screen(); // VFD.write(0x12); // modalità di scorrimento verticale (attiva) }

null resetVFD()

// esegue un ripristino software sul controller VFD { VFD.write(0x1B); // ESC VFD.write(0x49); // ripristino software }

void VFDnewline()

// sposta il cursore all'inizio della riga successiva { VFD.write(0x0D); // ritorno a capo VFD.write(0x0A); // avanzamento riga }

void VFDclearsceen()

// sposta il cursore in alto a sinistra e cancella il display { VFD.write(0x0E); // cancella il display VFD.write(0x0C); // feed modulo - cursore in alto a sinistra }

void luminosità VFD (importo int)

// imposta la luminosità VFD - 25/50/75/100% // utilizza sequenze ESC { switch(amount) { case 25: VFD.write(0x1B); // ESC VFD.write(0x4C); // luminosità VFD.print(0); // 25% di interruzione della luminosità; caso 50: VFD.write(0x1B); // ESC VFD.write(0x4C); // luminosità VFD.write(0x40); // 50% di interruzione della luminosità; caso 75: VFD.write(0x1B); // ESC VFD.write(0x4C); // luminosità VFD.write(0x80); // 75% di interruzione della luminosità; caso 100: VFD.write(0x1B); // ESC VFD.write(0x4C); // luminosità VFD.write(0xC0); // 100% luminosità } }

void caratteri VFD()

// scorre i caratteri per il font selezionato { for (int i = 21; i < 256; i++) { VFD.write(0x16); // cursore di sottolineatura disattivato VFD.write(i); ritardo(100); } }

void moveCursor (posizione byte)

// sposta il cursore - la riga superiore è 0~39, la riga inferiore è 40~79 // la modalità di scorrimento verticale deve essere disattivata se utilizzata { VFD.write(0x1B); // ESC VFD.write(0x48); // sposta il cursore VFD.write(posizione); // Posizione }

ciclo vuoto()

{ VFD.write(0x16); // sottolinea il cursore off VFD.print("Ciao, mondo - riga uno."); // Puoi far saltare il testo delay(1000); VFDnewline(); VFD.print("Ciao, mondo - riga due."); ritardo(1000); VFD clear screen(); Luminosità VFD(25); VFD.print("*** 25% luminosità ***"); ritardo(1000); VFD clear screen(); Luminosità VFD(50); VFD.print("*** 50% luminosità ***"); ritardo(1000); VFD clear screen(); Luminosità VFD(75); VFD.print("*** 75% luminosità ***"); ritardo(1000); VFD clear screen(); Luminosità VFD(100); VFD.print("*** Luminosità 100% ***"); ritardo(1000); VFD clear screen();

caratteri VFD();

VFD clear screen();

for (int i = 0; i < 80; i++) { VFD.write(0x16); // Sottolinea il cursore spento moveCursor(i); VFD.print("X"); ritardo(100); moveCursore(i); VFD.print(" "); } VFDclearsceen(); }

Ci auguriamo che tu l'abbia trovato interessante e utile.

Questo post è offerto da pmdway.com: tutto per produttori e appassionati di elettronica, con consegna gratuita in tutto il mondo.

Consigliato: