效果如图:所示
电压为1V时,转换后的数字信号为0011 0011
代码如下。 #includereg52.hsbit ADDA=P3^0; sbit ADDB=P3^1; sbit ADDC=P3^2; sbit START=P3^3; sbit EOC=P3^4; sbit OE=P3^5; 语音延迟(无符号字符) ) while(I--; }void Adc0809Convert () {unsigned char temp; ADDA=0、ADDB=0、ADDC=0; //IN0START=1; 清除ADC0809内部寄存器延迟(10 ); 开始=0; //引出下降沿,启动A/D转换while () EOC==0); //判断是否结束转换OE=1转换后的数据被发送到数据总线. temp=P1; //接收数据}intmain(void ) while) {Adc0809Convert ); }过程1 .实现1.IN0~IN7 (模拟通道输入端子)
针——ADDA、ADDB、ADDC选择(模拟通道选择地址信号)。
2、开始(a/d转换开始信号) )。
a .装置1——在上升沿清除ADC0809内部寄存器,并在下降沿开始A/D转换
b .引出置位0——下降沿,开始A/D转换
3.EOC (转换结束信号) ——高电平有效-结束
while(EOC==0); 判断转换是否结束
4.OE (输入许可信号) )
OE=1时,输出转换后的数据。
5.d0~d7(a/d转换后的数据输出处) ) )。
定义temp接收数据。