TextLCD library for controlling various LCD panels based on the HD44780 4-bit interface
Fork of TextLCD by
mainLCD.cpp
- Committer:
- a00958821
- Date:
- 2016-10-05
- Revision:
- 9:a504aa8ce73b
File content as of revision 9:a504aa8ce73b:
#include "mbed.h" #include "TextLCD.h" TextLCD lcd(D2, D3, D4, D5, D6, D7); // rs, e, d4-d7 DigitalOut col1 (D8); DigitalOut col2 (D9); DigitalOut col3 (D10); DigitalOut col4 (D11); DigitalIn fila1 (A5); DigitalIn fila2 (A4); DigitalIn fila3 (A3); DigitalIn fila4 (A2); DigitalIn Reset (D12); DigitalIn Next (USER_BUTTON); char Simbolos[4][4] = { {'1','2','3','A'}, {'4','5','6','B'}, {'7','8','9','C'}, {'*','0','#','D'} }; int usrInput(); void turnOffteclado(); int * teclado(); void printLCD(int a, int b); int n = 0; int main() { int j = 0; while(1){ if (n == 0) { j=0; lcd.cls(); wait(1); lcd.printf("A"); while (j == 0) { if (Next == 0) { j = 1; n = 1; } } } if (n == 1) { j = 0; lcd.cls(); wait(1); lcd.printf("Unas kguamas o k"); while (j == 0) { if (Next == 0) { j = 1; n =2; } } } while (n == 2) { j = 0; lcd.cls(); wait(1); lcd.printf("Unas kguamas o kDos kguamas o k?"); while (j == 0) { if (Next == 0) { j = 1; n =3; } } } lcd.cls(); wait(1); while (n == 3) { j = 0; int *Index ; Index = teclado(); printLCD(Index[0],Index[1]); } } } void printLCD(int a, int b) { lcd.printf("%c",Simbolos[a][b]); wait(.3); } int * teclado() { static int r[2]; turnOffteclado(); int numero; while(1) { if (Next == 0) { lcd.cls(); n = 0; wait_ms(30); break; } col1 = 1; numero = usrInput(); if (numero != 0) { r[0]=numero-1; r[1]=0; //wait_ms(30); return r; } turnOffteclado(); col2 = 1; numero = usrInput(); if (numero != 0) { r[0]=numero-1; r[1]=1; //wait_ms(30); return r; } turnOffteclado(); col3 = 1; numero = usrInput(); if (numero != 0) { r[0]=numero-1; r[1]=2; //wait_ms(30); return r; } turnOffteclado(); col4 = 1; numero = usrInput(); if (numero != 0) { r[0]=numero-1; r[1]=3; //wait_ms(30); return r; } turnOffteclado(); } } void turnOffteclado() { col1 = col2 = col3 = col4 = 0; } int usrInput() { if (fila1 == 1) { return 1; } else if (fila2 == 1) { return 2; } else if (fila3 == 1) { return 3; } else if (fila4 == 1) { return 4; } else{ return 0; } }