查找ADC0804模数转换芯片的基本资料,并设计交互式控制转换电路,画出其时序图,说明它的控制转换原理。
求最佳
它的主要电气特性如下:
工作电压:+5V,即VCC=+5V。
模拟输入电压范围:0~+5V,即0≤Vin≤+5V。
分辨率:8位,即分辨率为1/28=1/256,转换值介于0~255之间。
转换时间:100us(fCK=640KHz时)。
转换误差:±1LSB。
参考电压:2.5V,即Vref=2.5V。
1.ADC0804的转换原理
ADC0804是属于连续渐进式(Successive Approximation Method)的A/D转换器,这类型的A/D转换器除了转换速度快(几十至几百us)、分辨率高外,还有价钱便宜的优点,普遍被应用于微电脑的接口设计上。
以输出8位的ADC0804动作来说明“连续渐进式A/D转换器”的转换原理,动作步骤如下表示(原则上先从左侧最高位寻找起)。
第一次寻找结果:10000000 (若假设值≤输入值,则寻找位=假设位=1)
第二次寻找结果:11000000 (若假设值≤输入值,则寻找位=假设位=1)
第三次寻找结果:11000000 (若假设值>输入值,则寻找位=该假设位=0)
第四次寻找结果:11010000 (若假设值≤输入值,则寻找位=假设位=1)
第五次寻找结果:11010000 (若假设值>输入值,则寻找位=该假设位=0)
第六次寻找结果:11010100 (若假设值≤输入值,则寻找位=假设位=1)
第七次寻找结果:11010110 (若假设值≤输入值,则寻找位=假设位=1)
第八次寻找结果:11010110 (若假设值>输入值,则寻找位=该假设位=0)
这样使用二分法的寻找方式,8位的A/D转换器只要8次寻找,12位的A/D转换器只要12次寻找,就能完成转换的动作,其中的输入值代表图1的模拟输入电压Vin
2.分辨率与内部转换频率的计算
对8位ADC0804而言,它的输出准位共有28=256种,即它的分辨率是1/256,假设输入信号Vin为0~5V电压范围,则它最小输出电压是5V/256=0.01953V,这代表ADC0804所能转换的最小电压值。
表1列出的是8~12位A/D转换器的分辨率和最小电压转换值。
表1 A/D转换器的分辨率和最小电压值
位数目 分辨率 最小电压转换值
8 1/256 0.01953V
10 1/1024 0.00488V
12 1/4096 0.00122V
至于内部的转换频率fCK,是由图2的CLKR(19脚)、CLK IN(4脚)所连接的R()、C(150PF)来决定。
图2 ADC0804与CPLD&FPGA、8051单片机等典型连接图
频率计算方式是:fCK=1/(1.1×R×C)
若以图2的R=10KΩ、C=150PF为例,则内部的转换频率是
fCK=1/(1.1×10 KΩ×150PF)=606KHz
更换不同的R、C值,会有不同的转换频率,而且频率愈高代表速度愈快。但是需要注意R、C的组合,务必使频率范围是在100KHz~1460KHz之间。
3.ADC0804的控制方法
要求ADC0804进行模拟/数字的转换,其实可以直接由下面的时序图及图2信号的流向来配合了解。
图3 ADC0804控制信号时序图
以图2、图3信号流向而言,控制ADC0804动作的信号应该只有CS、WR、RD。其中INTR由高电位转为低电位后,代表ADC0804完成这次的模拟/数字转换,而DB0~DB7代表是转换后的数字资料。
图3的动作大概可分成4个步骤区间——S0、S1、S2、S3,每个步骤区间的动作方式如下:
步骤S0:CS=0、WR=0、RD=1(由CPLD发出信号要求ADC0804开始进行模拟/数字信号的转换)。
步骤S1:CS=1、WR=1、RD=1(ADC0804进行转换动作,转换完毕后INTR将高电位降至低电位,而转换时间>100us)。
步骤S2:CS=0、WR=1、RD=0(由CPLD发出信号以读取ADC0804的转换资料)。
步骤S3:CS=1、WR=1、RD=1(由CPLD读取DB0~DB7上的数字转换资料)。
由上述步骤说明,可以归纳出所要设计的CPLD动作功能有:
负责在每个步骤送出所需的CS、WR、RD控制信号。
在步骤S1时,监控INTR信号是否由低电位变高电位,如此以便了解ADC0804的转换动作结束与否。
在步骤S3,读取转换的数字资料DB0~DB7