Cours:InfoS2 tdClavierMatriciel : Différence entre versions
(Une révision intermédiaire par le même utilisateur non affichée) | |||
Ligne 32 : | Ligne 32 : | ||
=Travail à réaliser= | =Travail à réaliser= | ||
− | * | + | fichier pour simuler avec simulIDE : [[Media:progmicroc_Digicode.sim1|progmicroc_Digicode.sim1]] |
+ | |||
+ | *écrire un programme qui détecte l'appui sur la touche 3 | ||
+ | **configurer de façon adéquate les broches en e/s | ||
+ | **activer la résistance de pull-up | ||
+ | **allumer/éteindre une led suivant l'état de la touche | ||
+ | *étendre le principe en détectant l'appui sur une touche de la ligne 1 | ||
*trouver le numéro de la ligne sur laquelle on appuie | *trouver le numéro de la ligne sur laquelle on appuie | ||
*trouver le numéro de colonne sur laquelle on appuie | *trouver le numéro de colonne sur laquelle on appuie | ||
*indiquer la touche appuyée | *indiquer la touche appuyée |
Version actuelle datée du 9 février 2023 à 17:01
Afin de limiter le nombre de broches nécessaires, les claviers matriciels sont organisés en ligne et colonne.
Connections
- connexions dans le clavier :
- les boutons sur une même ligne sont tous reliés ensemble (même côté du bouton)
- les boutons sur une même colonne sont tous reliés ensemble (le côté non utilisé pour les lignes)
- connexions sur le µcontrôleur :
- toutes les lignes sont reliées sur le même PORT
- toutes les colonnes sont reliées sur le même PORT
- il peut y avoir 2 PORT différents pour ligne et colonne
Principe
Afin de détecter le bouton sur lequel on appuie, il faudra :
- trouver sur quelle ligne un bouton est appuyé
- trouver sur quelle colonne un bouton est appuyé
Le principe est symétrique pour ligne et colonne.
On décrira le principe pour détecter le numéro de ligne :
- on place les colonnes en sortie à l'état 0
- on active les résistances de pull-up sur les entrées (les lignes)
- on observe l'état des entrées (les lignes)
Travail à réaliser
fichier pour simuler avec simulIDE : progmicroc_Digicode.sim1
- écrire un programme qui détecte l'appui sur la touche 3
- configurer de façon adéquate les broches en e/s
- activer la résistance de pull-up
- allumer/éteindre une led suivant l'état de la touche
- étendre le principe en détectant l'appui sur une touche de la ligne 1
- trouver le numéro de la ligne sur laquelle on appuie
- trouver le numéro de colonne sur laquelle on appuie
- indiquer la touche appuyée