En aquest tutorial farem una interfície amb un teclat tàctil 4x2 (8 tecles) amb microcontrolador ATMEGA32A. Tots sabem que el teclat és un dels dispositius d’entrada més importants que s’utilitzen en enginyeria electrònica. Aquest mòdul no té claus reals, però té coixinets metàl·lics capacitius especialment dissenyats, que són molt sensibles. Per tant, quan una persona es posi en contacte amb un dels coixinets, es produirà un canvi capacitiu en el bucle corresponent, i aquest canvi serà detectat pel control electrònic del mòdul. Com a resposta al tacte, el pin de sortida del coixinet corresponent augmenta.
Per a un teclat tàctil de vuit tecles tindrem vuit sortides. Tot i que hi ha altres funcions amb aquest mòdul, no les parlarem aquí.
Components necessaris
Maquinari: microcontrolador ATMEGA32, font d'alimentació (5v), PROGRAMADOR AVR-ISP, JHD_162ALCD (16x2LCD), condensador 100uF, condensador 100nF, resistència 1KΩ (2 peces), mòdul de teclat tàctil.
Programari: Atmel studio 6.1 o Atmel studio 6.2, progisp o flash magic.
Diagrama de circuits i explicació de treball

Al circuit PORTB d'ATMEGA32 està connectat al port de dades LCD. Aquí s'ha de recordar desactivar la comunicació JTAG en PORTC a ATMEGA canviant els bytes del fusible, si es vol utilitzar el PORTC com a port de comunicació normal. A la pantalla LCD de 16x2 hi ha 16 pins sobre tot si hi ha llum de fons, si no hi ha llum de fons hi haurà 14 pins. Es pot alimentar o deixar els passadors de llum de fons. Ara en els 14 pins hi ha 8 pins de dades (7-14 o D0-D7), 2 clavilles d'alimentació d'alimentació (1 i 2 o VSS i VDD o GND i + 5V), 3 rd pin per al control de contrast (Vee-controla com de gruix dels caràcters han d'estar mostrats) i 3 pins de control (RS i RW & E)
Al circuit, es pot observar que només he agafat dos pins de control, cosa que dóna la flexibilitat d’una millor comprensió, el bit de contrast i READ / WRITE no s’utilitzen sovint perquè puguin ser curts a terra. D’aquesta manera, la pantalla LCD té un contrast i un mode de lectura més alts. Només hem de controlar els pins ENABLE i RS per enviar caràcters i dades en conseqüència.
Les connexions que es fan per a LCD es donen a continuació:
PIN1 o VSS a terra
PIN2 o VDD o VCC a una potència de + 5v
PIN3 o VEE a terra (proporciona el màxim contrast possible per a principiants)
PIN4 o RS (Selecció de registre) a PD6 de uC
PIN5 o RW (lectura / escriptura) a terra (posa la pantalla LCD en mode lectura facilita la comunicació per a l'usuari)
PIN6 o E (Habilita) a PD5 de uC
PIN7 o D0 a PB0 de uC
PIN8 o D1 a PB1 de uC
PIN9 o D2 a PB2 de uC
PIN10 o D3 a PB3 de uC
PIN11 o D4 a PB4 de uC
PIN12 o D5 a PB5 de uC
PIN13 o D6 a PB6 de uC
PIN14 o D7 a PB7 de uC
Al circuit podeu veure que hem utilitzat la comunicació de 8 bits (D0-D7), però això no és obligatori, podem utilitzar la comunicació de 4 bits (D4-D7), però amb un programa de comunicació de 4 bits es torna una mica complex.
Per tant, observant la taula anterior estem connectant 10 pins de LCD al controlador en què 8 pins són pins de dades i 2 pins per al control.
Abans d’anar més enllà, és important saber que el mòdul capacitiu funciona amb una tensió de 2,5 V. I, a més, el corrent dibuixat pel mòdul tàctil no és elevat. Així que per obtenir 2,5V per al mòdul a partir de 5V utilitzarem un circuit divisor de tensió.
El circuit divisor de tensió format per les resistències es mostra a la figura següent.

Ara el circuit divisor de tensió proporciona voltatges baixos per a mòduls i altres referències. Com es mostra a la figura, la tensió de sortida al punt mig és una proporció de resistències. Per tant, per obtenir 2,5 V de 5 V, utilitzarem R1 = R2 = 1 KΩ, de manera que per a una tensió d’alimentació de 5 V la tensió del punt mig serà de 2,5 V respecte a terra. Aquesta tensió del circuit divisor està connectada al mòdul. Hi ha un condensador connectat a través d'ell per filtrar els harmònics, tal com es mostra al diagrama del circuit.
El port de sortida del mòdul tàctil està connectat al controlador atmega, de manera que cada vegada que es toca un teclat, la sortida de pin corresponent augmenta. Aquest canvi de lògica és percebut pel controlador. El controlador mostra el dígit a la pantalla LCD basat en el pin, que augmenta.
Per seguretat, es poden tirar tots els pins de sortida del mòdul a terra a través de resistències de 10 K, tot i que no són obligatoris.
El funcionament de TOUCH KEAYPAD INTERFACE s’explica millor pas a pas del codi C que es mostra a continuació.
