Go Down

Topic: Arduino e display LCD03_I2C (Read 871 times) previous topic - next topic

LeopoldGrufus

Ciao a tutti,
sono alle prime armi con Arduino e sto provato il display LCD03 in modalità' I2C, ma non mi funziona.
Ho collegato le linee SCL e SDA di LCD03 rispettivamente ai piedini analogici 4 e 5 di Arduino e 2 resistenze pull-up da 2200 Ohm che vanno al piedino +5 volt.
Ho caricato la libreria LiquidCrystal_I2C.h ed ho provato lo sketch HelloWorld che si trova nella cartella della libreria ma il display rimane con il messaggio di avvio e il cursore lampeggiante, come se non fosse collegato alla scheda Arduino.
Dove sbaglio?
Grazie
Franco

Brunello


LeopoldGrufus

Grazie per la rapida risposta Brunello... ma non e' la soluzione :)

Brunello

cambia anche l'address in 0XC6

LiquidCrystal_I2C lcd(0xC6,16,2)

LeopoldGrufus

Ok. Questo lo avevo gia' fatto. Grazie

Brunello

E' un display 20x4 ?
Ti da' all'accenzione il messaggio di sistema con l'indirizzo I2C ?

LeopoldGrufus

Si e' un 20x4 e all'accensione mi da il seguente messaggio:
LCD03 REVISION9
I2CMODE @ 0xC6
e da li' non vuol saperne di andare avanti :~

LeopoldGrufus

Sono alla frutta…
Ho ripreso le prove con l'LCD03 e, non accorto che il ponticello per la scelta I2C/Seriale era inserito, ho visto apparire una serie di caratteri casuali che riavviando lo sketch si aggiornavano. Tolto il ponticello, ho scelto lo sketch CMPS10 trovato su "http://www.robot-electronics.co.uk/htm/arduino_examples.htm" che usa l'LCD03 come seriale sulle porte D2 e D3 e le porte I2C per il sensore, avviandolo appare la scritta "CMPS10 Example V: ", dunque qualcosa funziona.
A questo punto, per non buttare il tutto, mi chiedo se dissaldando la schedina I2C lo posso usare come normale LCD. Credo di si
Da ultimo: in modalità' I2C ora non appare più' il messaggio iniziale ma solo il cursore lampeggiante… mah!
Grazie per avermi letto e buona giornata a tutti
Franco

Brunello

Stavo appunto vedendo che l'address I2C di arduino e' di soli 7 bit

Quote
There are both 7- and 8-bit versions of I2C addresses. 7 bits identify the device, and the eighth bit determines if it's being written to or read from. The Wire library uses 7 bit addresses throughout. If you have a datasheet or sample code that uses 8 bit address, you'll want to drop the low bit (i.e. shift the value one bit to the right), yielding an address between 0 and 127.


hai provato a mettere 0x63 come indirizzo

LiquidCrystal_I2C lcd(0x63,20,4);

e manda delle scritte su piu' righe, mi ricordo che c'era un problema con i display 20x4

LeopoldGrufus

Fatto... ma senza alcun risultato.
Credo prprio che finiro' col togliere la schedina I2C.

cyberhs

Fai attenzione che in modalità seriale il display usa 2 bit di stop e quindi la libreria softserial va modificata.

Io uso la modalità seriale, ma ho un Arduino MEGA ed ho modificato i registri dell'USART della porta seriale 2.

Ettore Massimo Albani

cyberhs

Prova anche ad alimentare Arduino con un alimentatore da 12V, in modo da svincolarti dalla ridotta corrente della USB del PC.

Ricordo che in alcuni casi era un problema di assorbimento (la retroilluminazione consuma un bel po').

LeopoldGrufus

Grazie cyberhs per il tuo intervento.
Ho alimentato Arduino a 12 V con il display in modalita' I2C ma la situazione non e' cambiata.
Purtroppo ora non ho tempo per altre prove.
Ciao
Franco

Go Up