MON51的部分源代码
;*******************************************************************************
;自动算波特程序
;*******************************************************************************
JbBPS:
CLR A
MOV RCAP2H,A
MOV RCAP2L,A
MOV TL2,A
MOV TH2,A
MOV T2MOD,A
MOV T2CON,A
JB P3.0,$
JNB P3.0,$
SETB TR2
Bps3:
JNB P3.0,Bps2
JNB TF2,Bps3
Bps2:
JNB P3.0,Bps2
Bps6:
JNB P3.0,Bps1
JNB TF2,Bps6
Bps1: JNB P3.0,Bps1
CLR TR2
JB TF2,JbBPS
MOV R7,TL2
MOV R6,TH2
MOV A,R6
CLR C
RRC A
MOV R4,A
MOV A,R7
RRC A
ADD A,R7
MOV R7,A ;/2
MOV A,R4
ADDC A,R6
MOV R6,A
MOV A,R7
ADD A,#010H
MOV R7,A
CLR A
ADDC A,R6
MOV R6,A
MOV A,R7 ;R6R7+16
MOV R0,#KR5 ;/32
Bps8:
XCH A,R6
CLR C
RRC A
XCH A,R6
RRC A
DJNZ R0,Bps8 ;C:00FB
MOV R7,A ;-R6R7
CLR C
CLR A
SUBB A,R7
MOV RCAP2L,A
MOV TL2,A
CLR A
SUBB A,R6
MOV RCAP2H,A
MOV TH2,A
MOV T2CON,#034H ;通讯模式
MOV SCON,#05AH
Ret
;*******************************************************************************
;断点执行
;*******************************************************************************
Break_Go:
CLR EA
SETB TI
MOV A,SP
ADD A,#0F9H
XCH A,R0
MOV DPH,@R0
INC R0
MOV DPL,@R0
INC DPTR
INC DPTR
INC DPTR
MOV @R0,DPL
DEC R0
MOV @R0,DPH
XCH A,R0
POP PSW
POP DPH
POP DPL
POP A
LCALL GoToRETI
LJMP StopUseProgram
点击浏览该文件
发表时间:2004年10月9日22:41:55