ghvhgvj转换时间:100us(fCK=640KHz时)。转换误差:±1LSB。参考电压:2.5V,即Vref=2.5V。1.ADC0804的转换原理ADC0804是属于连续渐进式(SuccessiveApproximationMethod)的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的模拟输入电压Vin2.分辨率与内部转换频率的计算对8位ADC0804而言,它的输出准位共有28=256种,即它的分辨率是1/256,假设输入信号Vin为0~5V电压范围,则它最小输出电压是5V/256=0.01953V,这代表ADC0804所能转换的最小电压值。表1列出的是8~12位A/D转换器的分辨率和最小电压转换值。表1A/D转换器的分辨率和最小电压值位数目分辨率最小电压转换值81/2560.01953V101/10240.00488V121/40960.00122V至于内部的转换频率fCK,是由图2的CLKR(19脚)、CLKIN(4脚)所连接的R()、C(150PF)来决定。图2ADC0804与CPLD&FPGA、8051单片机等典型连接图频率计算方式是:fCK=1/(1.1×R×C)若以图2的R=10KΩ、C=150PF为例,则内部的转换频率是fCK=1/(1.1×10KΩ×150PF)=606KHz更换不同的R、C值,会有不同的转换频率,而且频率愈高代表速度愈快。但是需要注意R、C的组合,务必使频率范围是在100KHz~1460KHz之间。3.ADC0804的控制方法要求ADC0804进行模拟/数字的转换,其实可以直接由下面的时序图及图2信号的流向来配合了解。图3ADC0804控制信号时序图以图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