CERRADURA ELECTRONICA CON PIC 16F84
program clave
dim kp,i,j,a as byte 'kp = valor de la tecla presionada
'i = contador de teclas presionadas
'j = contador de asteriscos mostrados
'a = contador de veces acertadas
sub procedure iniciar_Lcd() 'Configuar PORTB como data port
Lcd_Config(PORTB,7,6,5,4,PORTA,0,1,2) 'y PORTA como control port del LCD
Lcd_Cmd(LCD_CURSOR_OFF) 'Apaga Curcor del LCD
end sub
sub procedure Leer_teclado()
Lcd_Cmd(LCD_SECOND_ROW) 'Envia el cursor a Lin 2 Col 1
for j=1 to i
Lcd_Chr_CP("*") 'Imprime * al presionar Tecla
next j
kp=254
while kp=254 'Espera a que se presione una tecla y
kp=Keypad_Released-2 'guarda el dato al soltarla
wend
end sub
main:
Keypad_Init(PORTB)'Inicializa PORTB como controladordel Teclado
while 1
iniciar_Lcd
Lcd_Out_CP("Teclee Clave:") 'Imprime Clave en 1ra Linea
if i=4 then 'Al presionar 4 teclas correctas
Lcd_Cmd(LCD_SECOND_ROW) 'Evia el cursor en Lin 2 Col 1
if a=4 then 'si se aciertan 4 veces
if PORTA.3=1 then 'si esta activa la opcion renovarclave
for i=0 to 3
iniciar_Lcd 'se imprimira en linea1
Lcd_Out_CP("Nueva Clave:") 'nueva clave:
Leer_teclado 'y en linea2 los asteriscos
EEprom_write(i,kp) 'se reescribira la clave en EEPROM
next i
iniciar_Lcd
Lcd_Out_CP("Clave Guardada.") 'Luego se Imprimira Clave Guardad.
else 'si no se activa la opcion renovar clave
Lcd_Out_CP("Exito!!") 'se imprimira...
Regístrate para leer el documento completo.