AllDigital
DIM ESTADO_ANTERIOR AS BYTE
'Define tolos los bits del Puerto B como salida
TrisB=%00000000
'Inicializa todos los bit del PortB en 0
PortB=0
'Define todos los bit del port A como entrada
TrisA=%111111111
INICIO:
IF (PortA <> ESTADO_ANTERIOR) AND (PortA<>0) THEN ESTADO_ANTERIOR=0
IF (PORTA = %00000001) AND (ESTADO_ANTERIOR=0) THEN
PortB=0
RB.0= 1
ESTADO_ANTERIOR=%00000001
ENDIF
IF (PORTA = %00000010) AND (ESTADO_ANTERIOR=0) THEN
PortB=0
RB.1= 1
ESTADO_ANTERIOR=%00000010
ENDIF
IF (PORTA = %00000011) AND (ESTADO_ANTERIOR=0) THEN
PortB=0
RB.2= 1
ESTADO_ANTERIOR=%00000011
ENDIF
' y asi siguiendo para todos los estados
Goto INICIO