STC8A8K64D4 Series Manual
-
LJMP I2CISR
ORG 0100H
I2CISR:
PUSH ACC
PUSH DPL
PUSH DPH
PUSH P_SW2
MOV P_SW2,#80H
MOV DPTR,#I2CMSST
MOVX A,@DPTR
ANL A,#NOT 40H ;Clear interrupt flag
MOVX @DPTR,A
CPL P1.0 ;Test port
POP P_SW2
POP DPH
POP DPL
POP ACC
RETI
MAIN:
MOV SP, #5FH
MOV P0M0, #00H
MOV P0M1, #00H
MOV P1M0, #00H
MOV P1M1, #00H
MOV P2M0, #00H
MOV P2M1, #00H
MOV P3M0, #00H
MOV P3M1, #00H
MOV P4M0, #00H
MOV P4M1, #00H
MOV P5M0, #00H
MOV P5M1, #00H
MOV P_SW2,#80H
MOV A,#0C0H ;Enable I2C master mode
MOV DPTR,#I2CCFG
MOVX @DPTR,A
MOV A,#80H ;Enable I2C interrupt
MOV DPTR,#I2CMSCR
MOVX @DPTR,A
MOV P_SW2,#00H
SETB EA
MOV P_SW2,#80H
MOV A,#081H ;Send start command
MOV DPTR,#I2CMSCR
MOVX @DPTR,A
MOV P_SW2,#00H
JMP $
END