Go Down

Topic: Problema con LCD (Read 576 times) previous topic - next topic

_Gabriele_

Ciao a tutti,
ho ordinato questo LCD:
http://urlin.it/38dac

ho provato ad eseguire questo codice:
Quote
#include <LiquidCrystal.h>
const char* TEXT="ciao ciao ciao ciao ciao ciao";
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);

void setup() {
}
 
void loop() {
  lcd.begin(2, 16);
  lcd.print(TEXT);// set the cursor to column 0, line 1
delay (1000);
}


il progetto e' questo:



L' LCD me lo stampa, ma non va' a capo!!!
Sapete come risolvere?
Grazie a tutti


PaoloP

Non è un problema. LCD è tonto, non và a capo da solo.  :smiley-mr-green:
Devi essere tu che tagli le righe in base alla lunghezza del tuo LCD e gli dici di scriverle sulla seconda riga.  ;)

_Gabriele_

#2
Feb 19, 2013, 05:01 pm Last Edit: Feb 19, 2013, 05:03 pm by _Gabriele_ Reason: 1
ah... che figura xD
quale e' la funzione per andare alla seconda riga? :)

PaoloP

Devi settare il cursore --> http://arduino.cc/en/Reference/LiquidCrystalSetCursor

astrobeed


Non è un problema. LCD è tonto, non và a capo da solo.  :smiley-mr-green:


Diciamo che in realtà dipende dalla geometria del display, quando invii una serie di caratteri questi vengono posti, in ordine di arrivo, nella ram interna del controller, 80 byte, a partire dalla posizione in cui si trova il relativo puntatore.
La "fregatura" sta nel fatto che le righe del display non seguono 1:1 le celle di memoria, sono organizzate per banchi di memoria, tipicamente di 16-20 byte, tra loro alternati, una disposizione classica è che la riga 1 va da 0 a 15 (o 19) mentre la riga 2 va da 40 a 56 (o 59), ovvero la prima riga è posta nella prima metà della ram mentre la seconda è posta nella metà successiva.
La cosa è facilmente verificabile su un display 20x4 dove scrivendo in continuazione, senza mai fare un clear o modificare il valore del puntatore alla ram, prima si riempie la prima riga, poi la terza, quindi la seconda e infine la quarta, questa è una delle possibili ripartizioni della ram, la più diffusa.

_Gabriele_

Grazie a tutti!!!
mi siete stati utilissimi grazie!!! :DD

Go Up
 


Please enter a valid email to subscribe

Confirm your email address

We need to confirm your email address.
To complete the subscription, please click the link in the email we just sent you.

Thank you for subscribing!

Arduino
via Egeo 16
Torino, 10131
Italy