Voilà, j'ai modifié mon code en conséquence, ça commence à être pas trop mal :
Plusieurs problèmes par-contre :
-
De temps à autre, le compteur sort du switch, me bloquant le programme (Il est censé me faire une boucle type 0, 1, 2, 0 ect)
Grosso modo ça donne ça dans le moniteur : 000000111111111222222220000000 (fonctionnement normal) puis d'un coup 00000111111222222333000001111112222223333444445555566666 (chaque changement d'état correspond a un appui)
Ca ressemble a du rebond, mais j'ai une résistance + un condensateur sur le bouton, je ne vois pas comment faire mieux :~ -
La fonction millis peut-être utilisé pour détecter une longueur de temps d'appuie ? Attention, je ne veux utiliser qu'un bouton...
Style :
if(appuie>=1000) // si le temps d'appuie détecter est supérieur ou égal a une seconde, afficher le sous menu correspondant
{
switch(validation) // Validation de l'affichage
case 1:
lcd.print(temperature);
break;
}
Je sait que je pourrais afficher la température en même temps que la sélection de ce mode, mais j'aurais aimé savoir faire une sélection basé sur le temps d'appuie (et du coup pouvoir faire une infinité de sous menu voir un retour a la racine)
Pour tout vous dire, le but du jeu sera de récupérer les données récupérer sur ma vieille brouettes (température, pression d'huile, et pourquoi pas plus tard un indice de déclenchement du ventilo ect ect)
Mais j'aimerais maîtriser tout ça avant de me lancer dans l'installation et j'ai encore beaucoup de questions ![]()
Et dernière question, j'ai lu sur un forum que le câblage du bouton ce faisais suivant ce schéma :
5V --- Résistance --- bouton --- masse
|
|
Entrée Arduino
Je les ai monté comme à gauche, et à droite c'est comme dans le livre du starter kit !
Mes boutons fonctionnes, mais du coup j'ai des doutes...