Help accensione / spegnimento LCD

non sono d'accordo, indi passo ai test.
ho tenuto per 1 ora il mio display senza alimentazione ma con i pin connessi, e non si e' rotto.

Ne deduco che quello che dice il datasheet e' vero, ma solo se il tutto e' alimentato. Se manca i positivo di alimentazione non succede nulla ai pin di ingresso.
Hai altri test in merito ?

E se spegni solo la retroilluminazione del display dato che è quella che consuma di più?
Ti basterebbe solo un transistor

Pelletta:
E se spegni solo la retroilluminazione del display dato che è quella che consuma di più?
Ti basterebbe solo un transistor

STavo pensando: se è la mangatoia x un gatto deve stare sempre accesa e se visualizza sempre la stessa cosa non si bruciano i cristalli sempre utilizzati (fenomeno tv plasma della stazione che mostra gli orari delle partenze e degli arrivi?).
Secondo me è meglio spegnere tutto :smiley:

Quello che dice Uwe è vero, staccando Vcc ma continuando a mandare i segnali ai pin all'interno di un chip scorre comunque corrente. Potete benissimo verificarlo collegando 5V ad un pin qualunque di un Arduino ed uno dei pin GND al negativo dell'alimentazione esterna usata: poi staccate il cavetto USB. Vedrete che i LED della schedina si accendono come se fosse sotto tensione dalla porta USB.

E' però anche vero il discorso che spesso è inutile togliere completamente l'alimentazione all'intera logica del display. Staccata la retroilluminazione, si può usare il comando lcd.NoDisplay() per eliminare la visualizzazione. In questo modo il display consuma solo gli 1/2 mA della logica, accettabile se il progetto è qualcosa alimentato da rete. Per riattivare la visualizzazione basta usare lcd.Display()

Testato:
non sono d'accordo, indi passo ai test.
ho tenuto per 1 ora il mio display senza alimentazione ma con i pin connessi, e non si e' rotto.

Ne deduco che quello che dice il datasheet e' vero, ma solo se il tutto e' alimentato. Se manca i positivo di alimentazione non succede nulla ai pin di ingresso.
Hai altri test in merito ?

Il Tuo test significa solo che il TUO display ha sopportato per un ora le condizioni con le quali lo hai pilotato.
Nient altro. Da questo non puoi dedurre, ne se la sua vita viene riditto da queste condizioni o no, ne cosa succede con altri modelli o esemplari dello stesso modello di display.

Ciao Uwe

cece99:
STavo pensando: se è la mangatoia x un gatto deve stare sempre accesa e se visualizza sempre la stessa cosa non si bruciano i cristalli sempre utilizzati (fenomeno tv plasma della stazione che mostra gli orari delle partenze e degli arrivi?).
Secondo me è meglio spegnere tutto :smiley:

Ciao CECE99
Il pincipio di funzionamento di un display al plasma é diverso da un LCD.

In un display al plasma hai dei elettroni che vengono spinti su un colore fosforescente (molto simile come un tubo catodico, ma a differenza la produzione della nube di elettroni e l' accelerazione avviene singolarmente per ogni pixel) I fosfori della superfice che emana colore col tempo si degradano (come un colore sbiancato) in funzione della quantitá di elettrodi che sono arrivati (= luminositá alta per molto tempo) oltre che la produzione di calore é notevole e peggiora col tempo tutto il display. Il vantaggio é che ai un immagine di singili pixel che emana colore.

I singoli pixel del LCD fanno passare luce o meno. Nei display a colore la luce arriva da una retroilluminazione. Per questo non si puó bruciare un immagine come nei tubi catodici o i display al plasma. L' usura consiste nel degrado della retroilluminazione e nei guasti di pilotaggio dei singoli pixel (dove ci sono transistori).

Ciao Uwe

grazie a tutti per gli interventi! Di lavoro sviluppo software per disposistivi embedded, ma non mi sono mai occupato di HW, e si capisce dalle mie domande :* , ho iniziato a giocare con arduino da pochissimo, ma mi sto già divertendo parecchio :slight_smile:

uwefed:
Devi fare 2 cose: devi togliere le tensioni su tutti i pin di entrata e poi interrompere l' alimentazione positiva compreso la tensione sul pin di contrasto. Questo perché (quasi) tutti gli integrati non sopportano tensioni superiori a quella applicata sui piedini di alimentazione.

Per togliere le tensioni sui pin di entrata usa un tristate bus driver come per per esempio il 74HC244. Per portarlo in stato di alta impedenza devi dare H sui 2 pin enable.

Per interrompere l' alimentazione usa un transistor PNP o P-MOSFET.

Ciao Uwe

Credo di aver capito come interrompere l'alimentazione con un P-MOSFET, appena ho un po' di tempo disegno il circuito così vediamo se ho capito davvero :slight_smile:

Per togliere le tensioni sui pin del display potrebbe essere sufficiente impostare i corrispettivi pin su arduino come input così vanno in alta imopedenza?

Mi devo documentare su cos'è e come si usa un tree state bus driver!

leo72:
Quello che dice Uwe è vero, staccando Vcc ma continuando a mandare i segnali ai pin all'interno di un chip scorre comunque corrente. Potete benissimo verificarlo collegando 5V ad un pin qualunque di un Arduino ed uno dei pin GND al negativo dell'alimentazione esterna usata: poi staccate il cavetto USB. Vedrete che i LED della schedina si accendono come se fosse sotto tensione dalla porta USB.

E' però anche vero il discorso che spesso è inutile togliere completamente l'alimentazione all'intera logica del display. Staccata la retroilluminazione, si può usare il comando lcd.NoDisplay() per eliminare la visualizzazione. In questo modo il display consuma solo gli 1/2 mA della logica, accettabile se il progetto è qualcosa alimentato da rete. Per riattivare la visualizzazione basta usare lcd.Display()

Il principio di funzionamento della mangiatoia che ho in mente è semplicissimo: programmi un timer, lo avvii e quando scade si apre la ciotola. Mi serve perché quando lavoro il mio micetto sta a casa da solo e vorrei che mangiasse alle ore giuste, se no si "autoregola" mangiando subito tutto ! una volta avviato il timer vorrei che l'LCD si spegnesse del tutto per minimizzare i consumi, non prevedo alimentazione da rete, ma a batterie ...

vitalife:
Per togliere le tensioni sui pin del display potrebbe essere sufficiente impostare i corrispettivi pin su arduino come input così vanno in alta imopedenza?

Sí in teoria basta quello ma visto che il pilotaggio del display lo farai attraverso una libreria devi vedere come gestisce la libreria i pin e come farla ripartire dopo lo spegnimento.

Comunque non hai ancora risposto come mai devi spegnere il display.
Ciao Uwe

uwefed:

vitalife:
Per togliere le tensioni sui pin del display potrebbe essere sufficiente impostare i corrispettivi pin su arduino come input così vanno in alta imopedenza?

Sí in teoria basta quello ma visto che il pilotaggio del display lo farai attraverso una libreria devi vedere come gestisce la libreria i pin e come farla ripartire dopo lo spegnimento.

Comunque non hai ancora risposto come mai devi spegnere il display.
Ciao Uwe

Perché una volta programmato il timer di apertura della ciotola non c'è più bisogno di avere informazioni su LCD e dato che prevedo di alimentare tramite batteria vorrei spegnerlo per consumare poco. Dici che basta spegnere la retroilluminazione?

No, non basta spegnere la retroilluminazione.
Un altra domanda: perché Ti serve un display?
Ciao Uwe

Per permettere di programmare e far vedere il tempo di apertura programmato, fino a 12 ore in incrementi di mezz'ora! Avevo pensato di non metterlo, però dovrei dare dei feedback audio con un piezo mentre si imposta il timer, sarebbe poco chiaro!

Se è un progetto a batterie, se stacchi anche l'alimentazione è meglio.
Resta un dubbio. Ma stai usando un Arduino intero o un Atmega soltanto? Nel primo caso i 2 mA consumati dalla logica del display sono pochi rispetto a quelli consumati da tutta la scheda lasciata attiva. E con dei motori ad attivare la mangiatoia immagino che le batterie dureranno il giusto.

vitalife:
Per permettere di programmare e far vedere il tempo di apertura programmato, fino a 12 ore in incrementi di mezz'ora! Avevo pensato di non metterlo, però dovrei dare dei feedback audio con un piezo mentre si imposta il timer, sarebbe poco chiaro!

Potresti usare un piccolo display a 7 segmenti a 2 cifre pilotato con uno shift register (3 pin) e 2 transistor (2 pin).

leo72:
Se è un progetto a batterie, se stacchi anche l'alimentazione è meglio.

Intendi sempre l'alimentazione del display immagino! :slight_smile: O quella di arduino ? O quella del gatto ??? NO quella proprio no !

Per ora sto usando arduino per prototipare, tieni presente che ho ricevuto il kit la scorsa settimana, quando (e se ) tutto funzionerà con arduino intero volevo mettere solo il microcontrollore.

grazie, mi stai dando veramente un sacco di idee e di aiuto ! Il minidisplay mi piace! Ripeto, essendo a digiuno di elettronica (a parte gli studi universitari di un bel po' di anni fa, tanta teoria e niente pratica), mi mancano un bel po' di concetti di base. Del resto pensavo che con i display a segmenti le sveglie o orologi digitali vanno avanti anni prima di esaurire le batterie... E' il tipo di display che suggerisci tu, giusto ? In piccolo ovviamente...

Sì, intendo i display "vintage" :wink:
Questo della foto è il primo che ho trovato. Lo prendi a catodo comune, così piloti i segmenti con uno shift register tipo il 74595. Ripensando a quello che ti ho scritto, non ti servono neanche i 2 transistor, a meno che tu non voglia multiplexarlo. Visualizzi i numeri col display, puoi usare il punto per le mezz'ore. Sennò ci sono anche a 3 cifre, se vuoi fare ad esempio "10.5"

Secondo me è la scelta più semplice e quella che ti da poi meno sbattimenti.

7-Segment-LED-Display.jpg

L'ora tarda mi fa scriverr bischerate... :sweat_smile:
I transistor ti servono a meno che tu non usi tanti s/r quante sono le cifre del display

Ma come già detto da leo, se usi addirittura un motore ti stai preoccupando di pochi ma del display ? che motore vuoi usare e quali batterie ?