gurées comme des entrées ou des sorties. C'est la fonction **pinMode()** qui va permettre de configurer chaq... tre elles sera fournie en paramètre effectif à la fonction **pinMode()** après le numéro du port. Les consta... itement les déclarer en entrées via l'appel de la fonction **pinMode()**. Sur un broche en entrée le microco... angeront d'état de façon apparemment aléatoire en fonction du bruit électrique de l'environnement ou en se c
c (tension d'alimentation du microcontroleur)
La fonction **analogReference()** permet de modifier la tensi... lisée, il faut impérativement faire un appel a la fonction **analogReference(AREF)** avec toute lecture de l... période d'environ 490 Hz peut être modifié via la fonction **analogWrite()**. Le rapport cyclique est codé s... même ressource (timer) du microcontrôleur que les fonction milli() et delay() ce qui peut entraîner des conf
s broches 2 et 3 de l'ATmega 328. On utilisera la fonction **attachInterrupt()** pour configurer la gestion ... .
<note warning>
Toute variable modifiée par une fonction exécutée lors du traitement des interruptions doi... pu par des interruptions on peut faire appel à la fonction **noInterrupt()** puis réactiver les interruption... sant les interruptions internes ne fonctionneront pas jusqu’à ce que la fonction interrupts() soit appellée.
ou GREEN
enum traffic_light {RED, GREEN};
/**
* Fonction: trafficLightTo()
* Role: Controle le feu de sig... u CLOSE
enum gate_position {OPEN, CLOSE};
/**
* Fonction: setGate()
* Role: Controle l'ouverture et la fe... permet conserver sa valeur entre les appels de la fonction.
switch (p) {
case OPEN:
//Bou