Tengo el siguiente circuito montado, estoy empezando con la parte de un LCD y teclado matricial,
pero no hace nada el proteus, solo me manda muchos mensajes de "whilst busy"
Dí con el problema y aparentemente es porque no he configurado el ADCON que tiene que ver con indicarle al puerto A que será usado cómo salidas digitales.
El código arreglado es este, pero aún así sigo teniendo el mismo error.
pero no hace nada el proteus, solo me manda muchos mensajes de "whilst busy"
Dí con el problema y aparentemente es porque no he configurado el ADCON que tiene que ver con indicarle al puerto A que será usado cómo salidas digitales.
El código arreglado es este, pero aún así sigo teniendo el mismo error.
Código:
ADCON1=%00000110
TRISA = %00000000
TRISB = %00000000
TRISD = %01111000
VAR1 VAR Byte
var1 = 0
Pause 200
Lcdout $fe, 1
Lcdout $fe, 2
Lcdout "* Pantalla LCD *"
Lcdout $fe,$C0, "* Teclado Mat. *"
PAUSE 3000
Inicio:
Call Teclado
Lcdout $fe, 2
Lcdout "Tecla Pulsada: "
Lcdout $fe,$C0, "--> ",#var1," "
GoTo Inicio
Teclado:
PORTD.0 = 0
PORTD.1 = 1
PORTD.2 = 1
If PORTD.3 = 0 Then VAR1 = 1
If PORTD.4 = 0 Then VAR1 = 4
If PORTD.5 = 0 Then VAR1 = 7
If PORTD.6 = 0 Then VAR1 = 10
PORTD.0 = 1
PORTD.1 = 0
PORTD.2 = 1
If PORTD.3 = 0 Then VAR1 = 2
If PORTD.4 = 0 Then VAR1 = 5
If PORTD.5 = 0 Then VAR1 = 8
If PORTD.6 = 0 Then VAR1 = 11
PORTD.0 = 1
PORTD.1 = 1
PORTD.2 = 0
If PORTD.3 = 0 Then VAR1 = 3
If PORTD.4 = 0 Then VAR1 = 6
If PORTD.5 = 0 Then VAR1 = 9
If PORTD.6 = 0 Then VAR1 = 12
Return
End
Adjuntos
Última edición por un moderador: