simple demostration

Dependencies:   Hotboards_keypad mbed

Committer:
RomanValenciaP
Date:
Tue Mar 08 21:34:10 2016 +0000
Revision:
1:1b1de1bdac89
Parent:
0:62b7e7dd5ba4
comments

Who changed what in which revision?

UserRevisionLine numberNew contents of line
RomanValenciaP 0:62b7e7dd5ba4 1
RomanValenciaP 0:62b7e7dd5ba4 2 #include "mbed.h"
RomanValenciaP 0:62b7e7dd5ba4 3 #include "Hotboards_keypad.h"
RomanValenciaP 0:62b7e7dd5ba4 4
RomanValenciaP 1:1b1de1bdac89 5 // Se define el arreglo keys con su respectivo número de renglones
RomanValenciaP 1:1b1de1bdac89 6 // y columnas, y con el valor de cada una de las teclas
RomanValenciaP 0:62b7e7dd5ba4 7 char keys[ 4 ][ 4 ] =
RomanValenciaP 0:62b7e7dd5ba4 8 {
RomanValenciaP 0:62b7e7dd5ba4 9 { '1' , '2' , '3' , 'A' },
RomanValenciaP 0:62b7e7dd5ba4 10 { '4' , '5' , '6' , 'B' },
RomanValenciaP 0:62b7e7dd5ba4 11 { '7' , '8' , '9' , 'C' },
RomanValenciaP 0:62b7e7dd5ba4 12 { '*' , '0' , '#' , 'D' }
RomanValenciaP 0:62b7e7dd5ba4 13 };
RomanValenciaP 0:62b7e7dd5ba4 14
RomanValenciaP 1:1b1de1bdac89 15 // Se definen los pines que conectan a las filas
RomanValenciaP 0:62b7e7dd5ba4 16 DigitalInOut rowPins[ 4 ] = { PA_6 , PA_7 , PB_6 , PC_7 };
RomanValenciaP 1:1b1de1bdac89 17 // Se definen los pines que conectan a las columnas
RomanValenciaP 0:62b7e7dd5ba4 18 DigitalInOut colPins[ 4 ] = { PA_8 , PB_10 , PB_4 , PB_5 };
RomanValenciaP 0:62b7e7dd5ba4 19
RomanValenciaP 1:1b1de1bdac89 20 // Se crea un nuevo teclado con los valores anteriores
RomanValenciaP 0:62b7e7dd5ba4 21 Keypad kpd( makeKeymap( keys ) , rowPins , colPins , 4 , 4 );
RomanValenciaP 0:62b7e7dd5ba4 22
RomanValenciaP 1:1b1de1bdac89 23 // Se configura el puerto serial
RomanValenciaP 0:62b7e7dd5ba4 24 Serial pc( USBTX , USBRX );
RomanValenciaP 0:62b7e7dd5ba4 25
RomanValenciaP 0:62b7e7dd5ba4 26 int main()
RomanValenciaP 0:62b7e7dd5ba4 27 {
RomanValenciaP 0:62b7e7dd5ba4 28 while(1)
RomanValenciaP 0:62b7e7dd5ba4 29 {
RomanValenciaP 1:1b1de1bdac89 30 // Se pregunta por cualquier tecla presionada
RomanValenciaP 0:62b7e7dd5ba4 31 char key = kpd.getKey( );
RomanValenciaP 0:62b7e7dd5ba4 32
RomanValenciaP 1:1b1de1bdac89 33 // Si se presiona una tecla "key" tendrá un valor diferente de cero
RomanValenciaP 0:62b7e7dd5ba4 34 if( key )
RomanValenciaP 0:62b7e7dd5ba4 35 {
RomanValenciaP 1:1b1de1bdac89 36 // Se manda al puerto serial la tecla presionada
RomanValenciaP 0:62b7e7dd5ba4 37 pc.printf( "%c" , key );
RomanValenciaP 0:62b7e7dd5ba4 38 pc.printf( "\n\r" );
RomanValenciaP 0:62b7e7dd5ba4 39 }
RomanValenciaP 0:62b7e7dd5ba4 40 }
RomanValenciaP 0:62b7e7dd5ba4 41 }