ADC0808是采样分辨率为8位的、以逐次逼近原理进行模/数转换的器件。其内部有一个8通道多路开关,它可以根据地址码锁存译码后的信号,只选通8路模拟输入信号中的一个进行A/D转换。ADC0808是ADC0809的简化版本,功能基本相同。一般在硬件仿真时采用ADC0808进行A/D转换,实际使用时采用ADC0809进行A/D转换。
ADC0808是CMOS单片型逐次逼近式A/D转换器,它有8路模拟开关、地址锁存与译码器、比较器、8位开关树型A/D转换器。本文主要就是介绍adc0808模数转换电路图及程序,一起来了解一下。
adc0808模数转换电路图adc0808模数转换程序如下:
ORG 0000H ;主程序入口
AJMP MAIN
MAIN: MOV R0,#30H ;数据区首地址
MOV R4,#08H ;八路模拟信号
MOV R1,#00H ;模拟通道0
MOV P2,#7FH ;ADC0809片选端口地址
MOV A,#00H
MOVX @R1,A ;启动ADC0809
LOOP: MOV A,30H ;A/D转换结果送P1口
MOV P1,A
JNB P3.3, LP ;查询EOC状态
LCALL RDAD ;转换完成,调读取A/D转换结果子程序
LP: SJMP LOOP ;循环等待
RDAD: MOVX A,@R1 ;读取转换结果子程序
MOV @R0,A ;存入内存
INC R0 ;数据区地址加1
INC R1 ;修改模拟输入通道
MOVX @R1,A ;启动下一路模拟通道进行转换
DJNZ R4,LOOP1 ;八路未完,循环
MOV R0,#30H ;八路输入转换完毕
MOV R4,#08H ;
MOV R1,#00H ;
MOV A,#00H
MOVX @R1,A ;重新启动ADC0809
LOOP1: RET ;返回
END
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)