Bonjour,
Personnellement je pense que l'utilisation d'un typedef éclairci l'écriture
byte recallVar=0;
void f0() {Serial.println("Zero");}
void f1() {Serial.println("Un");}
void f2() {Serial.println("Deux");}
void f3() {Serial.println("Trois");}
void f4() {Serial.println("Quatre");}
void f5() {Serial.println("Cinq");}
//etc .....
//array de pointeur vers des fonctions
typedef void (*voidfunc)();
voidfunc func[] = {f0, f1, f2, f3, f4, f5/*, f6, f7, f8, f9*/};
void setPattern() {
if ((recallVar >= 0) && (recallVar <= 9))
{
func[recallVar]();
}
}
void setup()
{
Serial.begin(115200);
}
//utilisation dans la loop()
void loop() {
setPattern();
recallVar = (recallVar + 1) % 6;
}