Dans ce tutoriel, nous allons interfacer un clavier tactile 4x2 (8 touches) avec le microcontrôleur ATMEGA32A. Nous savons tous que le clavier est l'un des périphériques d'entrée les plus importants utilisés dans l'ingénierie électronique. Ce module ne possède pas de touches réelles, mais des plots métalliques capacitifs spécialement conçus, et ces plots sont très sensibles. Ainsi, lorsqu'une personne entre en contact avec l'un des pads, il y aura un changement capacitif dans la boucle correspondante, et ce changement sera détecté par l'électronique de commande dans le module. En réponse au toucher, la broche de sortie du pad correspondant devient haute.
Pour un pavé tactile à huit touches, nous aurons huit sorties. Bien qu'il existe d'autres fonctionnalités avec ce module, nous n'allons pas en discuter ici.
Composants requis
Matériel: microcontrôleur ATMEGA32, alimentation (5v), AVR-ISP PROGRAMMER, JHD_162ALCD (16x2LCD), condensateur 100uF, condensateur 100nF, résistance 1KΩ (2 pièces), module de clavier tactile.
Logiciel: Atmel studio 6.1 ou Atmel studio 6.2, progisp ou flash magic.
Schéma de circuit et explication de fonctionnement
Dans le circuit PORTB de ATMEGA32 est connecté au port de données LCD. Ici, il ne faut pas oublier de désactiver la communication JTAG de PORTC vers ATMEGA en changeant les octets de fusible, si l'on veut utiliser le PORTC comme port de communication normal. Dans l'écran LCD 16x2, il y a 16 broches sur tout s'il y a un rétro-éclairage, s'il n'y a pas de rétro-éclairage, il y aura 14 broches. On peut alimenter ou laisser les broches du rétroéclairage. Or, dans les 14 broches, il y a 8 broches de données (7-14 ou D0-D7), 2 broches d'alimentation en énergie (1 et 2 ou VSS et VDD ou GND et + 5v), 3 ème broches de la commande de contraste (VEE-contrôle l'épaisseur des caractères doivent être illustré) et 3 broches de commande (RS & RW & E)
Dans le circuit, vous pouvez observer que je n'ai pris que deux broches de contrôle, cela donne la flexibilité d'une meilleure compréhension, le bit de contraste et READ / WRITE ne sont pas souvent utilisés afin qu'ils puissent être court-circuités à la masse. Cela met l'écran LCD en mode de contraste et de lecture le plus élevé. Nous avons juste besoin de contrôler les broches ENABLE et RS pour envoyer des caractères et des données en conséquence.
Les connexions effectuées pour l'écran LCD sont indiquées ci-dessous:
PIN1 ou VSS à la terre
Alimentation PIN2 ou VDD ou VCC à + 5v
PIN3 ou VEE à la masse (donne le meilleur contraste pour un débutant)
PIN4 ou RS (sélection de registre) à PD6 de uC
PIN5 ou RW (lecture / écriture) à la terre (met l'écran LCD en mode lecture facilite la communication pour l'utilisateur)
PIN6 ou E (Activer) à PD5 de uC
PIN7 ou D0 à PB0 de uC
PIN8 ou D1 à PB1 de uC
PIN9 ou D2 à PB2 de uC
PIN10 ou D3 à PB3 de uC
PIN11 ou D4 à PB4 de uC
PIN12 ou D5 à PB5 de uC
PIN13 ou D6 à PB6 de uC
PIN14 ou D7 à PB7 de uC
Dans le circuit, vous pouvez voir que nous avons utilisé une communication 8 bits (D0-D7) mais ce n'est pas obligatoire, nous pouvons utiliser une communication 4 bits (D4-D7) mais avec un programme de communication 4 bits devient un peu complexe.
Ainsi, en observant le tableau ci-dessus, nous connectons 10 broches de l'écran LCD au contrôleur dans lequel 8 broches sont des broches de données et 2 broches pour le contrôle.
Avant d'aller plus loin, il est important de savoir que, le module capacitif fonctionne pour une tension de 2,5V. Et aussi le courant consommé par le module tactile n'est pas élevé. Donc, pour obtenir 2,5 V pour le module à partir de 5 V, nous allons utiliser un circuit diviseur de tension.
Le circuit diviseur de tension formé par des résistances est illustré dans la figure ci-dessous.
Désormais, le circuit diviseur de tension fournit des tensions faibles pour les modules et autres références. Comme le montre la figure, la tension de sortie au point médian est un rapport de résistances. Donc, pour obtenir 2,5 V à partir de 5 V, nous allons utiliser R1 = R2 = 1 KΩ, donc pour une tension d'alimentation de 5 V, la tension médiane sera de 2,5 V par rapport à la terre. Cette tension du circuit diviseur est connectée au module. Un condensateur est connecté à travers pour filtrer les harmoniques, comme indiqué dans le schéma de circuit.
Le port de sortie du module tactile est connecté au contrôleur atmega, donc chaque fois qu'un pad est touché, la sortie de la broche correspondante devient élevée. Ce changement de logique est détecté par le contrôleur. Le contrôleur affiche le chiffre sur l'écran LCD en fonction de la broche, qui va haut.
Pour des raisons de sécurité, on peut abaisser toutes les broches de sortie du module à la terre via des résistances 10K, bien que ce ne soit pas obligatoire.
Le fonctionnement de TOUCH KEAYPAD INTERFACE est mieux expliqué étape par étape du code C donné ci-dessous.