teclado matricial

Dependencies:   TextLCD mbed

Committer:
briandk
Date:
Sat Sep 16 22:00:19 2017 +0000
Revision:
0:5bb77c9df6c5
teclado m;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
briandk 0:5bb77c9df6c5 1 #include "mbed.h"
briandk 0:5bb77c9df6c5 2 #include "TextLCD.h"
briandk 0:5bb77c9df6c5 3
briandk 0:5bb77c9df6c5 4
briandk 0:5bb77c9df6c5 5 int filas[5]={0,1,2,4,8};
briandk 0:5bb77c9df6c5 6 char tecla[6][6];
briandk 0:5bb77c9df6c5 7 int lectura;
briandk 0:5bb77c9df6c5 8
briandk 0:5bb77c9df6c5 9 Serial pc(USBTX,USBRX);
briandk 0:5bb77c9df6c5 10
briandk 0:5bb77c9df6c5 11 int main()
briandk 0:5bb77c9df6c5 12 {
briandk 0:5bb77c9df6c5 13 TextLCD lcd(D10, D11, D12, D13, D14, D15, TextLCD::LCD16x2);
briandk 0:5bb77c9df6c5 14 BusOut salida(D2,D3,D4,D5);
briandk 0:5bb77c9df6c5 15 BusIn entrada(D6,D7,D8,D9);
briandk 0:5bb77c9df6c5 16
briandk 0:5bb77c9df6c5 17 //primera fila
briandk 0:5bb77c9df6c5 18 tecla[1][1]='1';
briandk 0:5bb77c9df6c5 19 tecla[1][2]='2';
briandk 0:5bb77c9df6c5 20 tecla[1][3]='3';
briandk 0:5bb77c9df6c5 21 tecla[1][4]='A';
briandk 0:5bb77c9df6c5 22
briandk 0:5bb77c9df6c5 23 //segunda fila
briandk 0:5bb77c9df6c5 24 tecla[2][1]='4';
briandk 0:5bb77c9df6c5 25 tecla[2][2]='5';
briandk 0:5bb77c9df6c5 26 tecla[2][3]='6';
briandk 0:5bb77c9df6c5 27 tecla[2][4]='B';
briandk 0:5bb77c9df6c5 28
briandk 0:5bb77c9df6c5 29 //tercer fila
briandk 0:5bb77c9df6c5 30 tecla[3][1]='7';
briandk 0:5bb77c9df6c5 31 tecla[3][2]='8';
briandk 0:5bb77c9df6c5 32 tecla[3][3]='9';
briandk 0:5bb77c9df6c5 33 tecla[3][4]='C';
briandk 0:5bb77c9df6c5 34
briandk 0:5bb77c9df6c5 35 //cuarta fila
briandk 0:5bb77c9df6c5 36 tecla[4][1]='*';
briandk 0:5bb77c9df6c5 37 tecla[4][2]='0';
briandk 0:5bb77c9df6c5 38 tecla[4][3]='#';
briandk 0:5bb77c9df6c5 39 tecla[4][4]='D';
briandk 0:5bb77c9df6c5 40
briandk 0:5bb77c9df6c5 41 while(1)
briandk 0:5bb77c9df6c5 42 {
briandk 0:5bb77c9df6c5 43 for(int o=1;o<5;o++)
briandk 0:5bb77c9df6c5 44 {
briandk 0:5bb77c9df6c5 45
briandk 0:5bb77c9df6c5 46 salida=filas[o];
briandk 0:5bb77c9df6c5 47 lectura=entrada.read();
briandk 0:5bb77c9df6c5 48
briandk 0:5bb77c9df6c5 49 if(lectura==1)
briandk 0:5bb77c9df6c5 50 {lectura=1;}
briandk 0:5bb77c9df6c5 51 if(lectura==2)
briandk 0:5bb77c9df6c5 52 {lectura=2;}
briandk 0:5bb77c9df6c5 53 if(lectura==4)
briandk 0:5bb77c9df6c5 54 {lectura=3;}
briandk 0:5bb77c9df6c5 55 if(lectura==8)
briandk 0:5bb77c9df6c5 56 {lectura=4;}
briandk 0:5bb77c9df6c5 57
briandk 0:5bb77c9df6c5 58 if(lectura!=0)
briandk 0:5bb77c9df6c5 59 {
briandk 0:5bb77c9df6c5 60 lcd.locate(0,0);
briandk 0:5bb77c9df6c5 61 lcd.printf("IN: %c ",tecla[o][lectura]);
briandk 0:5bb77c9df6c5 62 pc.printf("IN: %c ",tecla[o][lectura]);
briandk 0:5bb77c9df6c5 63
briandk 0:5bb77c9df6c5 64
briandk 0:5bb77c9df6c5 65 wait(0.2);
briandk 0:5bb77c9df6c5 66 }
briandk 0:5bb77c9df6c5 67 }
briandk 0:5bb77c9df6c5 68 }
briandk 0:5bb77c9df6c5 69 }