Buenas noches, les anexo el siguiente código:
Hasta el momento he logrado con éxito identificar que tecla del keypad se está presionando, sin embargo quiero ir acumulando y corriendo el número pero no sé cómo.
El lenguaje es picbasicpro
la idea es hacer algo estilo contraseña, sólo que al introducir la secuencia correcta, en este caso un número tipo "23842" por ejemplo, (presionarias en orden, primero el 2, despues el 3, y se irían desplazando pero almacenando en la memoria) los números del lcd parpadeen.
Aquí les anexo el circuito, estoy aprendiendo apenas con el picbasic pro.
Código:
;Programa que registra el numero de cedula de la persona
;y si es el numero indicado, parpadea la pantalla
;de lo contrario, se borra
TRISB = %00000011
TRISA = %10000
DEFINE LCD_DREG PORTB 'UTILIZAR 4 BITS DEL PUERTO B PARA TX DE DATOS
DEFINE LCD_DBIT 4 'DESDE EL BIT B.4 AL BIT B.7
DEFINE LCD_RSREG PORTB'UTILIZAR EL REGISTRO DE CONTROL/DATOS EN EL PUERTO B
DEFINE LCD_RSBIT 2 'EN EL BIT B.1
DEFINE LCD_EREG PORTB 'UTILIZAR EL ENABLE EN EL PUERTO B
DEFINE LCD_EBIT 3 'EN EL BIT B.2
PAUSE 500 ' PAUSE DE MEDIO SEGUNDO
LCDOUT $FE, 1 ' LIMPIAR VISOR
LCDOUT $FE, 1, "Escribir" 'ESCRIBIR EN LA PRIMER LÍNEA
LCDOUT $FE, $C0, "Cedula" 'ESCRIBIR EN LA SEGUNDA LÍNEA
LCDOUT $FE, $0C
pause 1000
cola var porta.0
colb var porta.1
colc var porta.2
cold var porta.3
fil1 var porta.4
fil2 var portb.0
fil3 var portb.1
cola = 0
colb = 0
colc = 0
cold = 0
fil1 = 0
fil2 = 0
fil3 = 0
x var word
lcdout $FE, 1
ciclo:
cola = 1
if cola=fil1 then
goto saca1
endif
if cola=fil2 then
goto saca2
endif
if cola=fil3 then
goto saca3
endif
pause 10
cola = 0
colb = 1
if colb=fil1 then
goto saca4
endif
if colb=fil2 then
goto saca5
endif
if colb=fil3 then
goto saca6
endif
pause 10
colb = 0
colc = 1
if colc=fil1 then
goto saca7
endif
if colc=fil2 then
goto saca8
endif
if colc=fil3 then
goto saca9
endif
pause 10
colc = 0
cold = 1
if cold=fil2 then
goto saca0
endif
pause 10
cold = 0
goto ciclo
saca1:
x=1
goto lcd
saca2:
x=2
goto lcd
saca3:
x=3
goto lcd
saca4:
x=4
goto lcd
saca5:
x=5
goto lcd
saca6:
x=6
goto lcd
saca7:
x=7
goto lcd
saca8:
x=8
goto lcd
saca9:
x=9
goto lcd
saca0:
x=0
goto lcd
lcd:
lcdout $fe,2
lcdout " ", dec x
pause 300
goto ciclo
end
Hasta el momento he logrado con éxito identificar que tecla del keypad se está presionando, sin embargo quiero ir acumulando y corriendo el número pero no sé cómo.
El lenguaje es picbasicpro
la idea es hacer algo estilo contraseña, sólo que al introducir la secuencia correcta, en este caso un número tipo "23842" por ejemplo, (presionarias en orden, primero el 2, despues el 3, y se irían desplazando pero almacenando en la memoria) los números del lcd parpadeen.
Aquí les anexo el circuito, estoy aprendiendo apenas con el picbasic pro.
Adjuntos
Última edición por un moderador: