Bonjour,
Je suis en train d'essayer de reporter la valeur lue par une entrée analogique sur un écran LCD, mais je rencontre quelques soucis de stabilité. La valeur est modifiée avec un potentiomètre de 10k ohm.
int value;
void setup () {... }
void loop {
value = analogRead (analogPin);
lcd.setCursor(0, 1);
lcd.print (value, DEC);
}
Le premier problème avec ce code est que l'écran est rafraîchi à chaque cycle, ce qui est un peu inutile. Le 2ème problème est que parfois, il y a une hésitation entre 2 valeurs et donc l'affichage change en permanence de 228 à 229 par exemple, ce qui le rend illisible.
Le 3ème problème est que l'écran n'est pas rafraîchi et donc quand je passe de 1000 à 25, les 2 derniers 0 du 1000 restent affichés.
J'ai donc écrit le code suivant pour essayer de faire face à tout ça :
int value;
int previous_value;
void setup () {... }
void loop {
value = analogRead (analogPin);
if (previous_value != value) { // Si il y a un changement de valeur
previous_value = value;
lcd.clear (); // Reset de l'écran
lcd.setCursor(0, 1);
lcd.print (value, DEC);
}
}
Avec ce code j'ai de nouveau le problème de l'hésitation entre 2 valeurs. La lecture est aussi difficile à cause du rafraîchissement quand je tourne le potar.
Ce que j'aimerais, c'est à la fois un affichage fluide, précis et instantané de la valeur sur le LCD. Je tiens à préciser que je ne peux pas utiliser de delay ().
Y a-t-il une solution à ça ? Merci d'avance