一、ADC0809的工作过程
1、首先确定ADDA、ADDB、ADDC三位地址,决定选择哪一路模拟信号;
2、使ALE端接受一正脉冲信号,使该路模拟信号经选择开关到达比较器的输入端;
3、使START端接受一正脉冲信号,START的上升沿将逐次逼近寄存器复位,下降沿启动A/D转换;
4、EOC输出信号变低,指示转换正在进行。
5、A/D转换结束,EOC变为高电平,指示A/D转换结束。此时,数据已保存到8位三态输出锁存器中。此时CPU就可以通过使OE信号为高电平,打开ADC0809三态输出,由ADC0809输出的数字量传送到CPU。
二、CPU读取A/D转换器数据的方法
1、查询法
采用查询法就是将转换结束信号接到I/O接口的某一位,或经过三态门接到单片机数据总线上。A/D转换开始之后,CPU就查询转换结束信号,即查询EOC引脚的状态:若它为低电平,表示A/D转换正在进行,则MCS-51应当继续查询;若查询到EOC变为高电平,则给OE线送一个高电平,以便从线上提取A/D转换后的数字量。
优点:接口电路设计简单。
缺点:A/D转换期间独占CPU,致使CPU运行效率降低。
2、定时法:
对于每种A/D转换器,转换时间作为一项技术指标,是已知的和固定的。如ADC0809的转换时间为128us。可以设计一个延时子程序,当启动转换后,CPU调用该延时子程序或用定时器定时,延时时间或定时时间稍大于A/D转换所需时间。等时间一到,转换已经完成,就可以从“三态输出锁存器”读取数据。
优点:接口电路设计比查询法简单,不必读取EOC的状态。
缺点:A/D转换期间独占CPU,致使CPU运行效率降低;另外还必须知道A/D转换器的转换时间。
3、中断法
采用中断方式传送数据时,将转换结束信号接到单片机的中断申请端,当转换结束时申请中断,CPU响应中断后,通过执行中断服务程序,使OE引脚变高电平,以提取A/D转换后的数字量。
优点:A/D转换期间CPU可以处理其它的程序,提高CPU的运行效率。
缺点:接口电路复杂。