?? debug.txt
字號:
$include(c8051f300.inc)
DOUT EQU P0.0
DIN EQU P0.1
;******************************
ORG 000H
LJMP MAIN
ORG 003H
LJMP INT_DATA
;******************************
ORG 0B3H
MAIN:
NOP
MOV RSTSRC,#06H
MOV XBR0,#0FH
MOV XBR1,#0C0H
MOV XBR2,#0C0H
MOV P0MDIN,#0F3H
MOV P0MDOUT,#0FDH
MOV OSCICN,#17H
MOV OSCXCN,#67H
REG_CLK:
MOV A,OSCXCN
JNB ACC.7,REG_CLK;
NOP
MOV OSCICN,#08H ;
MOV TCON,#05H
MOV TMOD,#22H
MOV CKCON,#10H
MOV IE,#80H ;
;PCA Setting
MOV PCA0MD,#00H
MOV PCA0CPL0,#0FFH
MOV PCA0CPH0,#0FFH
MOV PCA0CPL1,#00H
MOV PCA0CPH1,#00H
MOV PCA0CPL2,#00H
MOV PCA0CPH2,#00H
MOV PCA0CPM0,#42H
MOV PCA0CPM1,#42H
MOV PCA0CPM2,#42H
;OPEN All Interrupt
SETB EA
SETB DOUT
SETB CR
CRC_D0:
MOV R0,#00H
MOV IT01CF,#71H
SETB EX0
CRC_D1:
CJNE R0,#01H,;
MOV TH0,#59H
MOV TH0,#59H
SETB TR0 ;
MOV IT01CF,#79H
CRC_D2:
CJNE R0,#02H,$ ;
CLR TR0
JNB TF0,CRC_D0
CLR TF0 ;
CLR TR0 ;
MOV IT01CF,#71H ;
CRC_D3:
CJNE R0,#03H,$ ;
MOV IT01CF,#79H
CRC_D4:
CJNE R0,#04,$
CLR EX0
SETB DOUT
;讀紅色設定值
RXD_R:
JB DIN,$ ;
MOV R5,#0CH
NOP
NOP
NOP
RXD_R1:
NOP
DJNZ R5,RXD_R1
MOV R6,#08H
RXD_R2:
MOV R5,#16H
NOP
RXD_R3:
NOP
DJNZ R5,RXD_R3
MOV C,DIN
MOV A,R2
RRC A
MOV R2,A
DJNZ R6,RXD_R2
JNB DIN,$ ;
;****************************************
;
RXD_G:
JB DIN,$
MOV R5,#0CH
NOP
NOP
NOP
RXD_G1:
NOP
DJNZ R5,RXD_G1
MOV R6,#08H
RXD_G2:
MOV R5,#16H
NOP
RXD_G3:
NOP
DJNZ R5,RXD_G3
MOV C,DIN
MOV A,R3
RRC A
MOV R3,A
DJNZ R6,RXD_G2
JNB DIN,$ ;
;---------------------------------------------------
;讀藍色設定值
RXD_B:
JB DIN,$
MOV R5,#0CH ;2
NOP ;1
NOP ;1
NOP ;1
RXD_B1:
NOP ;1
DJNZ R5,RXD_B1 ;2/3
RXD_BB: MOV R6,#08H ;2
RXD_B2:
MOV R5,#16H ;2
NOP ;1 ;10
RXD_B3:
NOP ;1
DJNZ R5,RXD_B3 ;2/3
MOV C,DIN ;2
MOV A,R4 ;1
RRC A ;1
MOV R4,A ;1
DJNZ R6,RXD_B2 ;2/3
JNB DIN,$
MOV C,DIN
MOV DOUT,C
;****************************************
OP_R:
MOV A,R2
CPL A
CJNE A,#0FFH,OP_R2
MOV PCA0CPL0,A
SJMP OP_G1
OP_R2:
MOV PCA0CPH0,A
OP_G1:
MOV A,R3
CPL A
CJNE A,#0FFH,OP_G2
MOV PCA0CPL1,A
SJMP OP_B1
OP_G2:
MOV PCA0CPH1,A
OP_B1:
MOV A,R4
CPL A
CJNE A,#0FFH,OP_B2
MOV PCA0CPL2,A
SJMP RXD_R
OP_B2:
MOV PCA0CPH2,A
;*********************************************
LJMP CRC_D0
;*********************************************
INT_DATA:
PUSH ACC
PUSH PSW
MOV C,DIN
MOV DOUT,C
INC R0
POP PSW
POP ACC
RETI
;*********************************************
END
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -