Está en la página 1de 1

// objetivo, lograr que al presionar una tecla del teclado matricial, poder

visualizar en LCD al tecla presionar

#include <16f877a.h>
#fuses XT, NOWDT, PUT, NOPROTECT, BROWNOUT, NOCPD, NOWRT, NODEBUG
#use delay (clock=4M)
#define use_portd_lcd true //se define el puerto para la LCD
#define use_portb_kbd true //se define el puerto para el
teclado matricial
#include <lcd.c> //se carga la libreria de lcd
#include <kbd.c> //se carga la libreria de
teclado
#include <stdio.h> //se carga en modo estandar
los puertos de entrada y salida

void main() {
char k; //variable de caracter
lcd_init(); //se inicializa la LCD
kbd_init(); //se inicializa el teclado
port_b_pullups(true); //se activan las resistencias
de pullups para teclado matricial

lcd_putc("\f leyendo Teclado \n"); //se inicia a leer el teclado

while(1) {
k=kbd_getc(); //a la variable se le asigna
la tecla presionada

if (k!=0) //si la tecla es presionada


{
if (k=='*') //si la tecla presionada
lcd_putc("\f "); //limpia lcd

else
printf(lcd_putc,"\f tecla No= %c ", k); //muestra la tecla presionada
delay_ms(500);

lcd_putc("\f leyendo Teclado \n");

}
}
}