Uso dela librecia KBD.c para manejar Teclado Matricial
PICELECTRONICA :: Inicio :: Microcontroladores :: Microchip :: CCS
Página 1 de 1.
Uso dela librecia KBD.c para manejar Teclado Matricial
En algunos proyecto necesitamos manejar el teclado matricial, pera visualización de numero, para cerraduras electrónicas y entre otro proyectos, acá se deja un ejemplo de como utilizarlo y conectarlo, nosotros no podemos cambiar la configuración de los pines a los que van conectados las patillas del teclado, al menos que lo modifiquemos el archivo INC de CSS
Cada vez que presionemos una tecla, se visualizara en el display el resultado
link de descarga
http://www.4shared.com/rar/194dgtjD/Escritorio_2.html?
- Código:
#include <16F876A.h>
#fuses XT,NOWDT //configuracion de fuses
#use delay (clock=4M) //oscilador
#define use_portb_kbd TRUE // se defina antes de utilizar la libreria que
//se va utilizar el puerto B
#include <kbd.c> // libreria del teclado matricial
#BYTE TRISC = 0X87 // mensiono el espacio de la memoria donde se encuentra TRISC
#BYTE PORTC = 0X07
void main(){
char a;
TRISC=0x00;
PORTC=0b01000000; // muestra el numero 0 x defecto
WHILE(TRUE){
kbd_init(); //instruccion que inicializa el programa del kbd
a=kbd_getc(); // lee el valor de la tecla presionada y lo almacena en a
if(a=='1')
PORTC=0b01111001; // numero 1 en binario
if(a=='2')
PORTC=0b00100100; // numero 2 en binario
if(a=='3')
PORTC=0b00110000; // numero 3 en binario
if(a=='4')
PORTC=0b00011001;
if(a=='5')
PORTC=0b00010010;
if(a=='6')
PORTC=0b00000010;
if(a=='7')
PORTC=0b01111000;
if(a=='8')
PORTC=0b00000000;
if(a=='9')
PORTC=0b00010000;
if(a=='*')
PORTC=0b00001000;
if(a=='0')
PORTC=0b01000000;
if(a=='#')
PORTC=0b00000110;
}
}
Cada vez que presionemos una tecla, se visualizara en el display el resultado
link de descarga
http://www.4shared.com/rar/194dgtjD/Escritorio_2.html?
FREDDYQT- Usario Nuevo
- Mensajes : 16
Fecha de inscripción : 20/04/2012
Edad : 30
Localización : Peru
PICELECTRONICA :: Inicio :: Microcontroladores :: Microchip :: CCS
Página 1 de 1.
Permisos de este foro:
No puedes responder a temas en este foro.