📄 0809_ok.asm
字号:
; 使用 0809做AD转换 串口输出转换后值
;频率:11.0592M,A/D地址:6800
ORG 0000H
LJMP START
ORG 0050H
START:MOV SP,#30H
;******************************
; MEMORY INITIALIZE
;******************************
CLR EA
MOV R0,#40H
MEM_INI:MOV @R0,#55H
INC R0
CJNE R0,#80H,MEM_INI
MOV TMOD,#20H
MOV TH1,#0FDH ;F=11.0592M
MOV TL1,#0FDH ;F=9600
MOV SCON,#0D0H;MOD3
MOV PCON,#00H
SETB TR1
CALL DEL6
MOV SBUF,#0F0H
CALL DEL6
MOV SBUF,#55H
CALL DEL6
MOV SBUF,#0FFH
CALL DEL6
MOV A,#55H
L_END: ; JB RI,RECEIVE :串口有输入
CALL DEL1S
CALL JISUAN ;CALL AD
MOV SBUF,A
JMP L_END
JISUAN: MOV A,#00H
MOV R0,A
MOV R1,#07H
ADD10:CALL DEL6
CALL AD
MOV SBUF,A
ADD A,R0
MOV R0,A
DJNZ R1,ADD10
RET
AD:MOV DPTR,#6800H
MOV A,#00H
MOVX @DPTR,A
LCALL DEL6 ;延时0.13MS
MOVX A,@DPTR
RET
RECEIVE:
CALL DEL6
MOV A,SBUF
INC A
MOV SBUF,A
CALL DEL6
CLR RI
JMP L_END
;**********DELAY 1S**********
DEL1S:MOV R6,#0FFH
DLA:MOV R5,#0FFH
DLB:MOV R4,#0AH ;256x256x5x3=1s
DLC:NOP
DJNZ R4,DLC
DJNZ R5,DLB
DJNZ R6,DLA
RET
;**********DELAY 6ms**********
DEL6: ;DELAY 6ms
SETB PSW.3
SETB PSW.4
MOV R7,#12
DEL61:MOV R6,#250
DEL62:DJNZ R6,DEL62
DJNZ R7,DEL61
MOV PSW,A
RET
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -