{"id":1351,"date":"2020-02-18T17:28:27","date_gmt":"2020-02-18T17:28:27","guid":{"rendered":"http:\/\/robots-argentina.com.ar\/didactica\/?p=1351"},"modified":"2020-11-02T00:55:22","modified_gmt":"2020-11-02T00:55:22","slug":"modulo-de-teclado-sensible-al-tacto-ttp229","status":"publish","type":"post","link":"https:\/\/robots-argentina.com.ar\/didactica\/modulo-de-teclado-sensible-al-tacto-ttp229\/","title":{"rendered":"M\u00f3dulo de teclado sensible al tacto TTP229"},"content":{"rendered":"

Este teclado de 16 teclas se conecta utilizando una conexi\u00f3n I2C<\/a><\/strong> (2-Wire<\/strong>), aunque en el chip sensor capacitivo TTP229 tiene implementada la opci\u00f3n de conectar solamente 8 teclas, que tienen salida directa en los pines del m\u00f3dulo. Son los pines marcados como OUT1<\/strong> a OUT8<\/strong>. Las l\u00edneas marcadas SDO<\/strong> y SCL<\/strong> pertenecen a la interfaz I2C<\/strong>.<\/p>\n

\"\"<\/a><\/p>\n

Caracter\u00edsticas<\/strong><\/p>\n

\u25a0 F\u00e1cil de usar, calibraci\u00f3n autom\u00e1tica
\n\u25a0 LED de encendido
\n\u25a0 Funciona en modo 8 o 16 canales.
\n\u25a0 La salida puede ser configurada como activa alta o baja
\n\u25a0 Simple para reemplazar salidas de llaves mec\u00e1nicas
\n\u25a0 La salida se puede conectar directamente a los pines de entrada del microcontrolador<\/p>\n

Especificaciones<\/p>\n

\u25a0 Voltaje de funcionamiento: 2V-5,5V
\n\u25a0 Tiempo de calibraci\u00f3n de inicio: 0,5 seg.
\n\u25a0 Tama\u00f1o de la plaqueta: 49,3 x 64,5mm<\/p>\n

Este m\u00f3dulo es una buena alternativa para reemplazar teclados mec\u00e1nicos, ya que es durable, f\u00e1cil de instalar (es totalmente plano), se puede proteger con una membrana en ambientes de atm\u00f3sfera corrosiva, y proporciona m\u00e1s durabilidad en condiciones de trabajo continuado.<\/p>\n

Puentes que definen las opciones<\/strong><\/p>\n

\"\"<\/a><\/p>\n

(Ver las opciones definibles en la tabla abajo)<\/p>\n

\"\"<\/a><\/p>\n

EJEMPLO:<\/strong><\/p>\n

\"\"<\/a><\/p>\n

Diagrama de pines del circuito integrado TTP229<\/strong><\/p>\n

\"\"<\/a><\/p>\n

El teclado se puede configurar tanto para usar con 8 teclas como con 16. Para el primer caso, parece poco razonable usar s\u00f3lo la mitad, ya que en realidad se venden m\u00f3dulos directamente con s\u00f3lo 8 teclas, y tambi\u00e9n con 4 y hasta con una sola.<\/p>\n

\"\"<\/a><\/p>\n

En todo caso, la divisi\u00f3n de funciones, y la multiplicidad de opciones que se pueden elegir usando una serie de puentes en la plaqueta aportan amplia funcionalidad y una buena adaptaci\u00f3n para distintos usos.<\/p>\n

Cuando se elige la opci\u00f3n de 16 teclas, se los lee por medio de una interfaz serie de 2 v\u00edas, llamada com\u00fanmente 2-Wire<\/strong> en el mundo Arduino, o I2C<\/strong>.<\/p>\n

Una vez conectado el hardware y descargando el c\u00f3digo al Arduino, al pulsar los teclas se pueden observar los resultados en el Monitor Serie del IDE Arduino.<\/p>\n

Diagrama en bloques del circuito integrado TTP229<\/strong><\/p>\n

\"\"<\/a><\/p>\n

Diagrama del m\u00f3dulo de teclado TTP229<\/strong><\/p>\n

\"\"<\/a><\/p>\n

PROGRAMAS DE PRUEBA<\/strong><\/p>\n

Conexi\u00f3n directa de las salidas de 8 teclas<\/strong><\/p>\n

Si en alguna ocasi\u00f3n se necesita utilizar s\u00f3lo la serie de teclas del 1 a 8, la configuraci\u00f3n y la lectura por programa es m\u00e1s sencilla y simple de entender. La conexi\u00f3n involucra 8 pines del conector del m\u00f3dulo de teclado al Arduino, y dos m\u00e1s de ellas para alimentaci\u00f3n +5<\/strong> y GND<\/strong>.<\/p>\n

Esta forma de uso tiene la desventaja de que ocupa muchas entradas digitales (que nunca sobran), aunque la ventaja es que no necesariamente se debe usar un Arduino u otro microcontrolador para recibir datos desde el m\u00f3dulo si se lo usa con esta configuraci\u00f3n. Podr\u00eda servir para introducir \u00f3rdenes de teclado en un circuito puramente digital, sin procesador ni programa.<\/p>\n

Diagrama de conexiones con Arduino<\/strong><\/p>\n

\"\"<\/a><\/p>\n

\"\"<\/a><\/p>\n

C\u00f3digo simple para 8 teclas<\/strong><\/p>\n

\/* C\u00f3digo simple para 8 teclas *\/\r\n\r\n\r\nvoid setup() {\r\n  pinMode(2, INPUT); \/\/ Tecla 1\r\n  pinMode(3, INPUT); \/\/ Tecla 2\r\n  pinMode(4, INPUT); \/\/ Tecla 3\r\n  pinMode(5, INPUT); \/\/ Tecla 4\r\n  pinMode(6, INPUT); \/\/ Tecla 5\r\n  pinMode(7, INPUT); \/\/ Tecla 6\r\n  pinMode(8, INPUT); \/\/ Tecla 7\r\n  pinMode(9, INPUT); \/\/ Tecla 8\r\n  Serial.begin(9600);\r\n}\r\n \r\nvoid loop(){\r\n   \/\/ \u00bf tecla presionada ?\r\n   for (byte i = 2; i < 10; i++) {\r\n   if (digitalRead(i)) \r\n      { \r\n        Serial.print(\"Tecla \"); \r\n        Serial.println(i-1);\r\n        break; \r\n      }\r\n   }\r\n   delay(200);\r\n    \/\/ Si se deja presionada la tecla, repite el mensaje cada 200 milisegundos\r\n}\r\n<\/pre>\n

Resultado en Monitor Serie<\/strong><\/p>\n

\"\"<\/a><\/p>\n


\n