📄 adc.asm
字号:
ORG 0000H
LJMP MAIN
ORG 0053H
LJMP ADC
ORG 500H
MAIN: MOV TMOD,#20H ;定时器T1为方式2
MOV TL1,#0FDH
MOV TH1,#0FDH ;波特率为9600
SETB TR1 ;启动T1
MOV IEN0,#0C0H
MOV IP0,#40H
MOV ADCON,#0FH
SETB EA ;开CPU总中断
WAIT:
CLR P1.0
SETB P1.0
LCALL DELAY1
CLR P1.0
LCALL DELAY1
NOP
NOP
NOP
NOP
NOP
MOV S0CON,#40H
MOV R0,#48H ;发送字符的始址
MOV R7,#02H ;发送字符的字节数
SETB TR1
TXD:MOV A,@R0
MOV S0BUF,A
WAIT1:JNB TI,WAIT1
CLR TI
INC R0
DJNZ R7,TXD
NOP
NOP
AJMP MAIN
ADC: CLR EAD
MOV A,ADCON ;启动AD
ANL A,#0C0H
MOV 48H,A
MOV A,#00H
MOV ADCON,A
MOV A,ADCH
MOV 49H,A
RETI
DELAY1: MOV R1,#0AH
DEL11: MOV R2,#0FFH
DEL12: MOV R3,#080H
DEL13: DJNZ R3,DEL13 ; 1+[1+(1+2*255+ 2)*255+2]*10+2=0.66S
DJNZ R2,DEL12
DJNZ R1,DEL11
RET
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -