Ho trovato parecchi progetti per pilotare display (in genere HD44780) usando vari integrati per fare risparmiare PIN.
Molti usano dei shift register tipo 74164 o 74595. Dell' Arduino usano due/tre PIN a caso, ma quei PIN saranno sfruttabili solo per quello !
Altri usano MCP23008 oppure PCF8574 che utilizzano i due PIN dell' IIC. Questo ha il grande vantaggio, che con quei due piedini si possono pilotare tante altre periferiche, senza utilizzare altri preziosi PIN.
La mia domanda e' : Quale di questi metodi e' piu' supportato ??
Quale si presume lo sara' in futuro ?
Vorrei iniziare a fare qualche progettino e iniziare con il piede giusto. Se esiste qualcosa di gia' pronto e funzionante, preferirei.
Io piloto i display paralleli tramite un Tiny84 che mi funge da driver e comunico con esso via I2C per cui consumo solo 2 pin. Non solo, con l'I2C quei 2 pin sono in comune con tutte le periferiche I2C che usi: grosso vantaggio nel caso nel tuo circuito tu inserisca più periferiche accessorie (vedi EEPROM esterni, RTC ecc..).
L'unica cosa è che ti devi creare un piccolo protocollo di comunicazione per spedire al driver i comandi, ma è una bischerata farlo perché in pratica si tratta di prendere i vari comandi che il display è in grado di accettare e poi replicarli in funzioni sull'Arduino o sul micro che pilota il Tiny.
Indubbiamente il 595 é meno costoso.
La potenzialitá del I2C é che puoi collegare piú display sulla I2C (potenzialmente fino 127) ma ne dubito che ci siano spesso necessitá di collegare piú di uno.
Ciao Uwe
con il PCF funziona la libreria ufficiale liquid crystal modificata per i2c, quindi non devi nemmeno modificare nulla negli sketch.
Se vuoi fare delle rpove io sto' lavorando con un lcd i2c nativo, e per il quale ho contrib uito alla modifica della libreria, anch'essa compatibile con i comandi della ufficiale liquid crystal.
Trovi tutto nella mia firma, sia il modello di display (un 8x2), sia la libreria
leo72:
Io piloto i display paralleli tramite un Tiny84 che mi funge da driver e comunico con esso via I2C per cui
Bel lavoro... Pero' se voglio condividere un mio progetto, devo fornire anche un software per il Tiny, le istruzioni per programmare il Tiny... (hai presente quante richieste di aiuto ??? )
Preferisco usare qualcosa che viene utilizzato anche da altri.
Grazie, comunque se puoi, mi manderesti lo sketch del Tiny ? Mi interessa il dialogo su IIC.
uwefed:
La potenzialitá del I2C é che puoi collegare piú display sulla I2C (potenzialmente fino 127) ma ne dubito che ci siano spesso necessitá di collegare piú di uno.
Non servono a nulla 127 display.
Pero' avere un display, un RTC, una eeprom, ethernet, seriale ecc.. Succede.