PORTC instable
Can i help me?
if i write ..
KeyUp:
PORTA = 0
TRISA = %00000000 ^ %00011111
PORTC = 0
TRISC = %10001111
HSEROUT[HEX PORTA, "-", HEX PORTC, 13]
porta = 0
portc instable
i use cap 0,1 vss/vd
Code:
Include "modedefs.bas"
asm
;__CONFIG _CONFIG1H, _OSC_HSPLL_1H
__CONFIG _CONFIG1H, _OSC_INTIO7_1H & _IESO_OFF_1H
__CONFIG _CONFIG2H, _WDT_OFF_2H & _WDTPS_512_2H
;__CONFIG _CONFIG2H, _WDT_ON_2H & _WDTPS_512_2H
__CONFIG _CONFIG3H, _PBADEN_OFF_3H
__CONFIG _CONFIG4L, _LVP_OFF_4L & _XINST_OFF_4L
__CONFIG _CONFIG5L, _CP0_ON_5L & _CP1_ON_5L & _CP2_ON_5L & _CP3_ON_5L
__CONFIG _CONFIG5H, _CPB_ON_5H
endasm
@ errorlevel -202
'-------------------------------------------------------------------------------
DEFINE HSER_RCSTA 90h
DEFINE HSER_TXSTA 20h
DEFINE HSER_BAUD 9600
DEFINE HSER_CLROERR 1
'-------------------------------------------------------------------------------
I Var WORD
J Var BYTE
K Var BYTE
Lin var byte
Col var byte
'-------------------------------------------------------------------------------
Boot:
DEFINE OSC 32
OSCCON = %11110000 ' 8 Mhz, internal osc
OSCTUNE = %11000000 ' 4x PLL enabled
ADCON0 = 0
ADCON1 = 15
CMCON = 7
INTCON2.7 = 0
LATA = 0
LATB = 0
LATC = 0
PORTA = 0
TRISA = %00000000
PORTB = 0
TRISB = %11111111
PORTC = 0
TRISC = %10001111
Led = 1
pause 2000
hSEROUT ["-"]
PAUSE 1
hSEROUT ["Start", 13, 10]
pause 1
Led = 0
'-------------------------------------------------------------------------------
Main
Gosub KeyUp
Goto Main
KeyUp:
PORTA = 0
TRISA = %00000000 ^ %00011111
PORTC = 0
TRISC = %10001111
'HSEROUT[HEX PORTA, "-", HEX PORTC, 13]
pause 1
IF (PORTC & %00001111) != 15 THEN KeyUp
PAUSE 50
Letra_Down:
FOR Lin = 0 TO 4
PORTA = 0
TRISA = (DCD Lin) ^ %11111111
col = PORTC & %00001111
IF (col != 15) THEN Key
NEXT lin
GOTO Letra_Down
Key:
Col = (NCD (col ^ %00001111))
while (PORTC & %00001111) != 15
wend
hserout[dec lin, "-", dec Col, 13]
RETURN
'-------------------------------------------------------------------------------
End
Bookmarks