Test LCD "Hello World"

Ciao a tutti..
non chiedete ne come ne perchè ma ho un test da eseguire su una scheda che ha un LCD. Questo diplay è collegato ai seguenti pin:
RS pin 3 analogico
Enable pin 4 analogico
D4 pin 11 digitale
D5 pin 8 digitale
D6 pin 7 digitale
D7 pin 4 digitale

Come modifico lo sketch HelloWorld per usare questi pin?

Grazie
Gianni

Devi usare questo :slight_smile:

LiquidCrystal lcd(3, 4, 11, 8, 7, 4);

L'esempio incriminato è questo no ?

// include the library code:
#include <LiquidCrystal.h>

// initialize the library with the numbers of the interface pins
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);            ////DEVI cambiare questi !!!!!!!

void setup() {
  // set up the LCD's number of columns and rows: 
  lcd.begin(16, 2);
  // Print a message to the LCD.
  lcd.print("hello, world!");
}

void loop() {
  // set the cursor to column 0, line 1
  // (note: line 1 is the second row, since counting begins with 0):
  lcd.setCursor(0, 1);
  // print the number of seconds since reset:
  lcd.print(millis()/1000);
}

GinoWT sono analogici ......

L'ordine è :
LiquidCrystal lcd(RS,Enable,D4,D5,D6,D7);
Quindi sarà per la tua richiesta:
LiquidCrystal lcd(A3,A4,11,8,7,4);
Se ti da problemi sostituisci A3 con 17 ed A4 con 18
:wink:

Grazie per l'info ma non funziona...
Praticamnte ho questa scheda:

http://openmoco.org/node/212

se andate in fondo e date un occhiata allo schema potete controllare su quale pin è connesso il LCD.
Il mio problema che se faccio l'upload del firmware che mi hanno rilasciato, va a buon vine ma non visualizzo nulla. Ho provato ad usare il display staccato dalla scheda e connettendolo come nel test http://arduino.cc/en/Tutorial/LiquidCrystal e funziona.... ma il mio problema è testarlo montato al PCB di cui sopra.

HELP ME PLEASE!

Sei sicuro che le saldature e tutto il resto sia apposto perchè dovrebbe essere giusto così....

Ciò che vedo io è che il backlight è gestito tramite pwm, quindi non è sufficiente pilotare i 4 pin del display con l'"hello world", devi prevedere anche il pilotaggio del pin 9 di Arduino; inoltre devi regolare il contrasto dal trimmer che hai sula scheda (almeno così mi pare di leggere), lo hai fatto?

menniti:
Ciò che vedo io è che il backlight è gestito tramite pwm, quindi non è sufficiente pilotare i 4 pin del display con l'"hello world", devi prevedere anche il pilotaggio del pin 9 di Arduino; inoltre devi regolare il contrasto dal trimmer che hai sula scheda (almeno così mi pare di leggere), lo hai fatto?

Io non riesco ad aprire lo schema e sono alla cieca... ma se è così.... non può certo andare....

come posso usare il pin 9?

@ Ratto:
Non serve lo schema, basta che guardi l'elenco dei collegamenti all'inizio, nella sezione Pinout. c'è la riga Digital 9                   LCD Backlight PWM . Non può attivarlo HIGH fisso perché brucia il 328 se il backlight è di quelli che assorbono tanto, ma se manda una frequenza dovrebbe andar bene.

@nadirfly: a mio avviso bisogna incatenare nello sketch il pilotaggio del pin con analogWrite, però è meglio aspettare il parere di chi sa di software come si deve.

grazie di tutto e aspetto voi eruditi che mi diano uno sketch che alzi sto pin 9 e che mi consenta di verificare il display.
Grazie

nadirfly:
grazie di tutto e aspetto voi eruditi che mi diano uno sketch che alzi sto pin 9 e che mi consenta di verificare il display.
Grazie

Non scordare di regolare il trimmer del contrasto. in realtà anche senza backlight deve funzionare solo che ti devi mettere in condizioni di luce soffusa ma non diretta sul display e devi regolarlo fino a vedere sulla prima riga la scritta hello world e sulla seconda un numero che cambia progressivamente. Se ho ben capito montando il display fuori dallo shield ti funziona, deve funzionare anche qui, oppure il trimmer del contrasto non sta lavorando o effettivamente c'è qualche falso contatto su piste e/o saldature

Anche se agisci sul trimmer nisba de nisba. uffa... mi sento proprio una c....a! :frowning:

nadirfly:
Anche se agisci sul trimmer nisba de nisba. uffa... mi sento proprio una c....a! :frowning:

Ma se agendo sul trimmer non succede proprio nulla sul display (a prescindere dalle scritte devi almen o vedere variazioni sui rettangolini dei caratteri) vuol dire che non sta lavorando, quindi il problema è proprio lui; se invece qualcosa cambia allora devi verificare bene le 4 linee digitali, controllando fisicamente le piste per vedere, p.es., se finiscono davvero su quei pin di Arduino e non su altri.

ho verificato ed ho continuità dall'uscita del 328 al display! e i pin sono quelli dichiarati.
cose e pazz!

nadirfly:
ho verificato ed ho continuità dall'uscita del 328 al display! e i pin sono quelli dichiarati.
cose e pazz!

OK, ma il trimmer (anche se non riesco a farti dire se sta lavorando il contrasto :cold_sweat:) non è collegato ad Arduino, dovrebbe avere uno dei due pin laterali collegato a GND e il pin centrale collegato all'LCD (o viceversa), il contrasto si regola variando la resistenza verso massa, se non si muove vuol dire che è rotto o collegato male il trimmer.

Analizzando il codice di cui ha dato il link nell'altro thread, vedo che il pin 9 viene gestito via PWM, leggendo qualcosa che però non so cosa (non mi sono messo ad analizzare tutto il codice).
Mi resta solo il dubbio che ad un certo punto lo sketch dà un bel analogWrite(LCD_BKL, HIGH)!
In pratica "apre" il GPIO del pin 9: se quel pin comanda direttamente la retroilluminazione senza passare da un transistor, c'è il rischio paventato da Michele, e cioè di friggere l'uscita dell'Atmega.
Va riguardato meglio lo schema.

Sì, ma c'è la storia del contrasto, purtroppo anche su questo Topic sono stato colto dalla Sindrome Calimero, mi sa che cambio Avatar :~

il trimmer funziona... se metto il firmware della scheda lampaggia e posso regolare il trimmer senza problemi.

tra il pin 9 e il display c'è un 2n4124... quindi penso sia protetto!

menniti:
@ Ratto:
Non serve lo schema, basta che guardi l'elenco dei collegamenti all'inizio, nella sezione Pinout. c'è la riga Digital 9                   LCD Backlight PWM . Non può attivarlo HIGH fisso perché brucia il 328 se il backlight è di quelli che assorbono tanto, ma se manda una frequenza dovrebbe andar bene.

@nadirfly: a mio avviso bisogna incatenare nello sketch il pilotaggio del pin con analogWrite, però è meglio aspettare il parere di chi sa di software come si deve.

Non si apriva proprio la pagina... Mike sei quasi a 2000 :slight_smile: