2
« le: novembre 11, 2018, 05:59:37 pm »
Bonjour,
J'ai un nouveau problème et je ne comprends pas la raison. Pouvez vous me donner un coup de main?
> Partie du programme utilisé, voir ci-joint mon programme.
Loop
{
...
ReadingDoorSwState() ;
Serial.println("fonction loop") ;
Serial.println(*pCurrDoorSw1State) ;
}
void ReadingDoorSwState()
{
int CurrDoorSw1State ;
int CurrDoorSw2State ;
DoorSw1State.update() ;
DoorSw2State.update() ;
CurrDoorSw1State = DoorSw1State.read() ;
CurrDoorSw2State = DoorSw2State.read() ;
pCurrDoorSw1State = &CurrDoorSw1State ;
pCurrDoorSw2State = &CurrDoorSw2State ;
Serial.println("fonction ReadingDoorSwState") ;
Serial.println(*pCurrDoorSw1State) ;
}
> Résultat
Quand je test mon programme avec la configuration ci-dessus, je visualise bien l'état du bouton poussoir qui est fonction de l
l'action fait sur ce dernier.
Affichage sur le moniteur série
17:48:20.640 -> fonction ReadingDoorSwState
17:48:20.673 -> 1
17:48:20.673 -> fonction loop
17:48:20.709 -> 1
17:48:20.709 -> fonction ReadingDoorSwState
17:48:20.742 -> 0
17:48:20.742 -> fonction loop
17:48:20.742 -> 0
17:48:20.742 -> fonction ReadingDoorSwState
Par contre, dans la configuration ci-dessous, je ne visualise pas correctement l'état du bouton poussoir.
> Partie du programme utilisé
Loop
{
...
ReadingDoorSwState() ;
Serial.println("fonction loop") ;
Serial.println(*pCurrDoorSw1State) ;
}
void ReadingDoorSwState()
{
int CurrDoorSw1State ;
int CurrDoorSw2State ;
DoorSw1State.update() ;
DoorSw2State.update() ;
CurrDoorSw1State = DoorSw1State.read() ;
CurrDoorSw2State = DoorSw2State.read() ;
pCurrDoorSw1State = &CurrDoorSw1State ;
pCurrDoorSw2State = &CurrDoorSw2State ;
}
> Résultat
Affichage sur le moniteur série
17:53:13.860 -> fonction loop
17:53:13.894 -> 14134
Quelque soit mon action sur le bouton poussoir cela n'a pas d'effet sur la valeur de ma variable lue.
De plus, la variable que je lis n'est pas 1 ou 0 mais un entier?
Pouvez vous m'expliquer mon erreur?
Merci,
Jérôme