simple demostration
Dependencies: Hotboards_keypad mbed
main.cpp@1:1b1de1bdac89, 2016-03-08 (annotated)
- Committer:
- RomanValenciaP
- Date:
- Tue Mar 08 21:34:10 2016 +0000
- Revision:
- 1:1b1de1bdac89
- Parent:
- 0:62b7e7dd5ba4
comments
Who changed what in which revision?
| User | Revision | Line number | New 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 | } |
Roman Valencia