Go Down

Topic: HEF4094 - ridurre pin LCD (Read 1 time) previous topic - next topic

max95

Ciao a tutti,

leggendo qui: http://www.arduino.cc/playground/Code/LCD3wires

praticamente con l'utilizzo di questo componente il numero di pin digitali da utilizzare per pilotare un lcd mi diminuisce a 3 pin no? necessito di librerie o cose particolari o programmo tranquillamente come se avessi il collegamento standard?

grazie in anticipo

lesto

sì, però devi usare l'appostita libreria, che trovi proprio su quella pagina
sei nuovo? non sai da dove partire? leggi qui: http://playground.arduino.cc/Italiano/Newbie

pelletta

Lesto lo hai mai fatto il circuito in questione?
Lo chiedo perchè di solito uso i 74HC595 per gli lcd e con quest'ultimo non riesco a controllare il led della retroilluminazione come si deve perciò lo faccio usando un ulteriore pin dell'Atmega.
Sai per caso se si riesce a spegnere e accendere la retroilluminazione in qualsiasi momento con il 4094?
Ciao

Michele Menniti


Lesto lo hai mai fatto il circuito in questione?
Lo chiedo perchè di solito uso i 74HC595 per gli lcd e con quest'ultimo non riesco a controllare il led della retroilluminazione come si deve perciò lo faccio usando un ulteriore pin dell'Atmega.
Sai per caso se si riesce a spegnere e accendere la retroilluminazione in qualsiasi momento con il 4094?
Ciao

Faccio un ragionamento: il pin della retroilluminazione porta ad un led che richiede circa 50mA che forse un'uscita del 4094 non riece ad erogare correttamente, certamente non puoi pensare di trascodificare un segnale pwm su uno shift, se è solo per accensione e spegnimento probabilmente ti basta aggiungere un transistor ed un paio di R. Che problema hai esattamente?
Guida alla programmazione ISP e seriale dei micro ATMEL (Caricare bootloader e sketch):
http://www.michelemenniti.it/Arduino_burn_bootloader.php
Guida alla Programmazione ATmega328 noP:
http://www.michelemenniti.it/atmega328nop.html
Articoli su Elettronica In:
http://www.michelemenniti.it/elettronica_in.html

pelletta

Lo avevo messo il transistor, aspetta un attimo che trovo il topic che avevo aperto tempo fa dove spiegavo cosa succedeva.
Ricordo però che dipendeva dalla libreria shiftlcd

pelletta

Ecco il link della discussione:
http://arduino.cc/forum/index.php?action=printpage;topic=35697.0

leo72

Ma invece di usare librerie che fanno tutto, dai massaggi al caffè, usa la classica shiftOut per spedire i dati agli shift register. Collega la base del transistor ad uno dei pin del o dei registri, basta che ti ricordi a quale è agganciata e poi fai tutto spedendo gli impulsi con quella funzione.

Michele Menniti


Ma invece di usare librerie che fanno tutto, dai massaggi al caffè, usa la classica shiftOut per spedire i dati agli shift register. Collega la base del transistor ad uno dei pin del o dei registri, basta che ti ricordi a quale è agganciata e poi fai tutto spedendo gli impulsi con quella funzione.

+1, da quanto ho letto è proprio un problema di libreria, non so cosa fa, ma lo shift assume per ogni pin un valore ad ogni colpo di clock, credo. Il dubbio che mi viene è che la commutazione non sia così veloce da non riuscire a pilotare il transistor; cioè se la frequenza di pilotaggio dello shift è superiore a quella di lavoro del transitor, questo con commuta, ma non penso sia questo il vero problema. Certo, a poter mettere un DOS sulla base del TR durante la fase di lavoro si potrebbe capire qual'è l'inghippo; in ogni caso la prova con la ShiftOut andrebbe fatta.
Guida alla programmazione ISP e seriale dei micro ATMEL (Caricare bootloader e sketch):
http://www.michelemenniti.it/Arduino_burn_bootloader.php
Guida alla Programmazione ATmega328 noP:
http://www.michelemenniti.it/atmega328nop.html
Articoli su Elettronica In:
http://www.michelemenniti.it/elettronica_in.html

lesto


Lesto lo hai mai fatto il circuito in questione?
Lo chiedo perchè di solito uso i 74HC595 per gli lcd e con quest'ultimo non riesco a controllare il led della retroilluminazione come si deve perciò lo faccio usando un ulteriore pin dell'Atmega.
Sai per caso se si riesce a spegnere e accendere la retroilluminazione in qualsiasi momento con il 4094?
Ciao


no, ho usato un integrato simile (driver) per gestire attraverso un circuito completamente analogico, non un LCD ma quei led con gli 8 con cui puoi comporre le lettere/numeri.
Immagino che sia la stessa cosa, puoi scegliere di complicare il circuito per evitare l'uso di un microcontrllore. Magari menniti può cavarci qualcosa :)
sei nuovo? non sai da dove partire? leggi qui: http://playground.arduino.cc/Italiano/Newbie

Michele Menniti



Lesto lo hai mai fatto il circuito in questione?
Lo chiedo perchè di solito uso i 74HC595 per gli lcd e con quest'ultimo non riesco a controllare il led della retroilluminazione come si deve perciò lo faccio usando un ulteriore pin dell'Atmega.
Sai per caso se si riesce a spegnere e accendere la retroilluminazione in qualsiasi momento con il 4094?
Ciao


no, ho usato un integrato simile (driver) per gestire attraverso un circuito completamente analogico, non un LCD ma quei led con gli 8 con cui puoi comporre le lettere/numeri.
Immagino che sia la stessa cosa, puoi scegliere di complicare il circuito per evitare l'uso di un microcontrllore. Magari menniti può cavarci qualcosa :)

Volentieri ma non ho capito niente :smiley-eek: mostrare uno schema elettrico, per esempio? :D
Guida alla programmazione ISP e seriale dei micro ATMEL (Caricare bootloader e sketch):
http://www.michelemenniti.it/Arduino_burn_bootloader.php
Guida alla Programmazione ATmega328 noP:
http://www.michelemenniti.it/atmega328nop.html
Articoli su Elettronica In:
http://www.michelemenniti.it/elettronica_in.html

lesto


Volentieri ma non ho capito niente :smiley-eek: mostrare uno schema elettrico, per esempio? :D


sorry roba delle superiori... in pratica riuscivamo a fare dei contatori usando solo logiche ttl, e stampare l'output su dei display led ad 1 carattere usando questi appositi driver.
sei nuovo? non sai da dove partire? leggi qui: http://playground.arduino.cc/Italiano/Newbie

Michele Menniti



Volentieri ma non ho capito niente :smiley-eek: mostrare uno schema elettrico, per esempio? :D


sorry roba delle superiori... in pratica riuscivamo a fare dei contatori usando solo logiche ttl, e stampare l'output su dei display led ad 1 carattere usando questi appositi driver.

Aaaaaaah XD ma è quello che ho già fatto col Capacimetro no? ;)
La scheda superiore è costituita appunto da 4+1 contatori, 4 driver e 4 Display a 7 segmenti (si chiamano così :)). Ma il driver va pilotato in logica BCD; certo, visto che è un solo led, gli basterebbe comunque un solo pin, ma a questo punto basterebbe un semplice buffer; però mettere un integrato per accendere un LED mi pare un po' come prendere la vacca dai maroni :smiley-mr-green: ed in ogni caso un led di un display a segmenti assorme 15mA, qui ne servono sempre troppi per quei tipi di integrati, no, non si può fare.
La strada del transitor è l'unica, ma bisogna capire che cavolo succede su quell'uscita dello shift, per scovare il motivo del non funzionamento.
Guida alla programmazione ISP e seriale dei micro ATMEL (Caricare bootloader e sketch):
http://www.michelemenniti.it/Arduino_burn_bootloader.php
Guida alla Programmazione ATmega328 noP:
http://www.michelemenniti.it/atmega328nop.html
Articoli su Elettronica In:
http://www.michelemenniti.it/elettronica_in.html

lesto

ahh mi son confusio io, pensavo quell'integrato fosse un driver come quello con logica BCD, non che fosse uno shift register.
sei nuovo? non sai da dove partire? leggi qui: http://playground.arduino.cc/Italiano/Newbie

Go Up