📄 ex8-7.asm
字号:
ORG 0000H ;主程序入口
AJMP MAIN
ORG 0013H ;外中断 入口
AJMP BINT1 ;转至ADC0809中断服务子程序
MAIN: MOV R0,#30H ;数据区首地址
MOV R4,#08H ;八路模拟信号
MOV R2,#00H ;模拟通道0
SETB EA ;开中断
SETB EX1 ;允许外中断1
SETB IT1 ;边沿触发
MOV DPTR,#7FFFH ;ADC0809端口地址
MOV A,#00H
MOVX @DPTR,A ;启动ADC0809
LOOP: MOV A,30H
MOV P1,A
SJMP LOOP ;等待
BINT1: PUSH ACC
MOVX A,@DPTR ;输入转换结果
MOV @R0,A ;存入内存
INC R0 ;数据区地址加1
INC R2 ;修改模拟输入通道
MOV A,R2 ;
MOVX @DPTR,A ;启动下一路模拟通道进行转换
DJNZ R4,LOOP1 ;八路未完,循环
MOV R0,#30H ;八路输入转换完毕
MOV R4,#08H ;
MOV R2,#00H ;
MOV A,#00H
MOVX @DPTR,A ;重新启动ADC0809
LOOP1: POP ACC
RETI ;中断返回
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -