Go Down

Topic: LCD , effacer qu'une ligne (Read 1 time) previous topic - next topic

KiliYaBB

Aug 07, 2009, 10:28 am Last Edit: Aug 07, 2009, 10:39 am by KiliYaBB Reason: 1
Bonjour,

J'utilise un LCD 2x16

chaque ligne correspond a un type d'information et sont donc indépendantes

comment puis je faire pour effacer la 2eme ligne mais pas la première ?

en fait je vais prendre un exemple :

je veux faire alterner sur le 2eme ligne "bonjour" puis "au revoir chao"

 lcd.setCursor(0, 1);
 lcd.print("bonjour");
 delay(1000);
   lcd.setCursor(0, 1);
 lcd.print("au revoir chao");
 delay(1000);

Avec ce code, le lcd écrit :

"bonjourir chao"

puis

"au revoir chao"

en boucle

au lieu de :

bonjour

puis

au revoir chao

en fait il faudrait dabord effacée la ligne mias le lcd.clear efface les deux lignes

Merci !

KiliYaBB

personne n'a été confronté à cette situation ?

churchill

Salut,
Avant d'écrire ton texte tu efface ta ligne avec 16 espaces :
cd.setCursor(0, 1);
lcd.print("                ");
cd.setCursor(0, 1);
lcd.print("bonjour");

churchill

KiliYaBB

Merci pour cette réponse !

j'avais pensé a cette méthode mais je trouvais cela un peu "bourin"

il n'y a pas de méthode "propre" ?

churchill

Tu peux aussi formater ta chaine en 16 caractères avant de l'afficher :

lcd.print("bonjour         ");

KiliYaBB

ah oui bien vu !

donc il ny a pas de méthode faisant appel a une fonction définie dans la librairie comme par exemple lcd.clear2() ?

KiliYaBB


Luj06

Mais qu'est ce qui te gêne dans le fait de mettre des espaces pour effacer ? Pourquoi toujours chercher plus loin que ce qui fonctionne ? :)

KiliYaBB

oui mais je trouvais que ca faisait bricolage, en tt cas je me demandais si il y avait une fonction dédiée mais apparemment non, je m'en vais donc mettre des espaces !!!! ;D ;)

bandito66

Plutot que d'effacer la ligne ou de la remplir de 0
vides avant de la remplir, pourquoi ne pas combler l'espace après bonjour par du vide : "bonjour         ".

Go Up