Ardu? No!Les boutons ≫ Une touche est appuyée?

Une touche est appuyée?

Quand on utilise des boutons, il faut à un moment ou à un autre les prendre en compte. Il y a deux façons de procéder, soit on scanne régulièrement le clavier, soit l'appui sur un bouton déclenche une interruption. Il est assez rare d'utiliser une interruption car la solution est un peu plus compliquée. Mais quand on regarde régulièrement les boutons, on peut chercher à économiser le temps passé.

Pour gagner du temps, on peut lors des interruptions ou des scans, ne tester que l'appui on nu d'un ou plusieurs boutons. Cela est parfois plus rapide surtout que les boutons ne sont pas souvent utilisés. Dans une matrice, une simple lecture de port suffi pour ce test, contre un scan complet des colonnes pour une lecture. On ne lira alors les boutons que si c'est utile.

Dans d'autres cas, c'est le temps maximal qui nous importe, et dans ce cas, il vaut mieux utiliser la lecture même si la plupart du temps elle ne donne rien. D'autant plus que cela réduit le code.

Certaines fins de pages seront consacrées à une façon de tester seulement la fonction uneToucheEstElleAppuyee.