Go Down

Topic: LCD HD44780 4X20 to I2C (Read 4789 times) previous topic - next topic

whole

Salve a tutti ragazzi,
sono alle prese con l'ssemblaggio di un HD44780 (4x20) su i2c, vorrei sfruttare le librerie che ho trovato qui : http://www.xs4all.nl/~hmario/arduino/LiquidCrystal_I2C/LiquidCrystal_I2C.zip
Le istruzioni sono molto chiare e ben fatte ho solo qualche dubbio, non vorrei limitarmi a saldare i fili, ma ci vorrei capire qualcosa visto che è questo che mi interessa piuttosto che il dispositivo che andrò a creare.

I miei dubbi sono :
Il controller:
Ho ordinato il PCF8574A, ma il mio IC ha sigla PCF8574AN (nel datasheet sembra uguale all'A, magari cambiano solo gli address configurabili ..
me lo confermate ?)

Il transistor :
Dallo schema allegato alle istruzioni trovo un BC557 che come è descritto dovrebbe servire, correggetemi se sbaglio, a dare la giusta corrente al display che si aspetta correnti minori di 500mA e questo transistor emette circa 500 mA avendo in ingresso credo (50mA?)

Resistenze :
L'unica che va calcolata è quella verso L'LCD e dovrei trovarla nel datasheet (spero).

Chiedo scusa se ho scritto castronerie, ma sto cercando di capirci e credetemi mi sono documentato prima di scrivere qui, probabilmente se ne ho dette non ho capito una mazza e mi scuso, ma credo l'unico modo per capire (son mezzo programmatore, elettronica zero), sia quello di postare qui.

Ringrazio anticipatamente tutti quelli che vorranno darmi una mano.
Grazie
Gino

uwefed

Ciao whole
Ti confermo in parte, la differenza tra il PCF8574(senza lettera)  e il PCF8574A (con la lettera A e eventuali altrie lettere aggiuntive come AN) é la parte fissa del indirizzo ;
Il PCF8574 ha l'indirizzo 0100 xxx percui in decimale da 32 a 39 .
Il PCF8574A ha l'indirizzo 0111 xxx percui in decimale da 56 a 63.

Il transistor BC557 sopporta 100mA non 500mA; Serve per pilotare la retroilluminazione a LED. Al LCD non frega niente quella corrente. Funziona comunque anche senza illuminazione, solo non é ben visibile in certe circostanze di illuminazione.
Nei dati tecnici del LCD trovi l'informazione sulla tensione e corrente e della resistenza da mettere.

Manda la sigla del LCD che hai comprato.

Ciao Uwe

whole

#2
Jun 11, 2010, 01:53 pm Last Edit: Jun 11, 2010, 01:56 pm by whole Reason: 1
Cia uwe
HO IL DATASHEET : WH2004 4x20 blu caratteri europei.

Per l'esattezza : http://pdf1.alldatasheet.com/datasheet-pdf/view/90440/ETC/WH2004A.html

Calamaro

@uwe A e AN stanno anche per il formato :D

whole

#4
Jun 11, 2010, 02:15 pm Last Edit: Jun 11, 2010, 02:23 pm by whole Reason: 1
il PCF8574AN è :
- package PDIP-N
- 8 indirizzi configurabili da (dec [56to63] or [hex 38to3F])

per il resto funziona tutto ugale credo.

uwefed

#5
Jun 11, 2010, 03:18 pm Last Edit: Jun 11, 2010, 03:19 pm by uwefed Reason: 1
Ciao
@ Grazie Calamaro, non sono stato attento, ma la richiesta di Whole era riferito alla parte fissa del indirizzo.


Per l' illuminazione trovi sulle specifiche del display a destra in fondo:
La tensione dei Led é  4,2V tipici fino a 4,6V e la corrente tipica é 280mA al massimo 560mA. Se alimenti con tensioni piú alte devi mettere una resistenza; il transistor citato é troppo debole per pilotare la retroilluminazione.

Ciao Uwe

whole

Uwe il tutto è partito da questo schema su cui mi sto basando e sto cercando di capire perchè soo stati usati sti compnenti.
Nb: Lo schema lo ha scrittoquello che ha fatto le lib crystal_i2c, le ho prese nei file allegati alla libreria.


whole

allora se volessi farlo tramite sempre l'ic controller i2c che tranasistor dovrei usare ?

uwefed

#8
Jun 11, 2010, 06:17 pm Last Edit: Jun 11, 2010, 06:18 pm by uwefed Reason: 1
ciao Whole

La resistenza (5V-4,2V)/ 280mA  = 2,8Ohm; metterei 3,3Ohm 1/2 Watt.

Come transistore meglio un BC327

Ciao Uwe

Federico

Io ho acidato diverse "breakout board" (chiamiamole) basate su quello schema con l'aggiunta di un doppio potenziometro digitale i2c. Cosi' con 2 fili di segnale sul sub e due per la corrente hai fatto tutto in maniera digitale. Ottima libreria!
Federico - Sideralis
Arduino &C: http://www.sideralis.org
Foto: http://blackman.amicofigo.com

uwefed

ciao Federico
Non ho capito cosa hai pilotato con i 2 poteniometri digitali.
Ciao Uwe

whole

#11
Jun 12, 2010, 07:11 pm Last Edit: Jun 12, 2010, 08:10 pm by whole Reason: 1
Credo che i potenzionetri digitali siano riferiti al backlight...
ma ne dovrebbe servire uno solo...
ad ogni modo ho una confusione bestiale..provo a rifarmi lo schema coi mei dati, poi magari me lo controllate un po e vediamo.

Ditemi se sbaglio,
al collettore del transistor si applica una resistenza da 1k per limitare ulteriormente la tensione di uscita dell'integrato ( che pare essere di 580Mv) ?


Federico

In realta' esiste un integrato che si chiama DS1803, prodotto dalla maxim, che contiene due potenziometri digitali.

Colleghi un digital pot al backlight e uno al contrasto e utilizzi il ds1803 in accoppiata con il pcf per ottenere il controllo totale dell' lcd. Sono arrivato a questa soluzione avendo la necessita' di regolare il backlight in maniera autonoma rispetto alla luce dell'ambiente. Inoltre ti permette, volendo, di avere l'effetto visivo di fade in o fade out sullo schermo e un eventuale lampeggio.

Ho scritto due righe per questo integrato nel playground italiano.

F
Federico - Sideralis
Arduino &C: http://www.sideralis.org
Foto: http://blackman.amicofigo.com

uwefed

@ federico
Grazie della risposta.
@ whole
Le cose non sono cosí semplici coi transistori.
Per primo i BJT come quello dello schema sono pilotati in corrente. La corrente della base (dove é messo la resistenza) regola la corrente tra emetitore e collettore. Il fattore che lega le due correnti é il guadagno ß o HFE.
Il hfe del transistore che ti avevo consigliato é a seconda del numero dopo la sigla tra 100 e 630.
Come mai detto io non ho mai studiato a scuola tanta elettronica ma solo un pó, che non é da stupirsi quando ho fatto l' indirzzo di elettrotecnica.
Ho delle difficoltá coi transistori e percui chiederei Federico di spiegare come ha fatto il circuito per regolare la luminositá dei LED di retroilluminazioni.
Ciao Uwe



Federico

Sostanzialmente credo che si applichi la resistenza al transisor sul collettore per non fare secco il transistor stesso. Da esperimenti che ho fatto lo schema che e' presente nella libreria e che ci hai mostrato e' corretto e funziona. In particolare funziona anche senza transistor per dirla proprio tutta...

PS:
Se per caso puo' tornare utile c'e' da qualche parte sul forum internazione una discussione che ho fatto per modificare la libreria liquidcrystal i2c per avere un pin di input sacrificando un altro pin (nel mio primo progetto avevo fissato il contrasto)
Federico - Sideralis
Arduino &C: http://www.sideralis.org
Foto: http://blackman.amicofigo.com

Go Up