AC-DC/DC-DC转换
ADC0804是逐次比较型A/D转换器,它采用CMOS工艺20引脚集成芯片,分辨率为8位,转换时间100us,输入电压范围0~5V芯片内具有三态输出数据锁存器,科直接连接在数据总线上。
ADC0804引脚分布图
Vin(+)Vin(-):两模拟信号输入端,用以接收单极性、双极性和差模输入信号
DB7~DB0:具有三态特性数字信号输出口
AGND:模拟信号地DGNA:数字信号地
CLK:时钟信号输入端
CLKR:内部时钟发生器的外接电阻端,与CLK端配合可由芯片自身产生时钟脉冲,其频率为1/(1.1RC)
CS:片选信号输入端,低电平有效,一旦CS有效,表明AD转换器被选中,可启动工作WR:写信号输入,低电平启动AD转换。
RD:读信号输入,低电平输出端有效。
INTR:AD转换结束信号,低电平表示本次转换已完成。
Vref/2:参考电平输入,决定量化单位
Vcc:芯片电源5V输入
分析图如下:
1.ADC0804的片选CS连接U2锁存器的Q7输出端,我们可以通过控制锁存器来控
制CS,这样接是因为开发板扩展的外围太多,没有多余的IO口来独立控制ADC0804的CS,所以选择U2
2.Vin(+)接电位器的中间滑动端,Vin(-)接地,因为这两端可以输入查分电压,即它可测量Vin(+)和Vin(-)之间的电压,当Vin(-)接地时,Vin(+)端的电压即为ADC0804的模拟输入电压,Vin(+)与电位器之间串联一个10K的电阻,目的是限制输入Vin(+)的电流,防止电流过大而烧坏AD芯片,当用短路帽接插针ADIN后,电位器的中间滑动端便通过电阻R12与Vin(+)连接,此时调节电位器的旋钮,其中间滑动端的电压便在0~Vcc间变化,进而ADC0804的数字输出端也在0x00~0xFF变化。
3.CLKR、CLK、GND之间用电阻电容组成RC振荡器,用来给ADC0804提供工作所需的脉冲,其脉冲的频率为1/(1.1RC),按芯片手册上说明,R取10K,C取150pF。
4.Vref/2端用两个1K的电阻分压得到Vcc/2的电压,将该电压作为AD芯片工作时内部的参考电压
5.WR、RD分别接单片机的P3.6和P3.7引脚,数字输出端接单片机的P1口。
6.将AGND和DGND同时连接到实验板的GND上,实际应用威廉希尔官方网站 要考虑精确度和稳定度最好将器件的模拟地和数字地分别连接,最后将模拟地和数字地仅在一点相连。
ADC0804启动转换时序图
序分析:CS先为低电平,WR随后置低,经过至少tw(WR)L(min100ns)时间后,WR拉高,随后AD转换器被启动,并且在经过(1~8个AD时间周期+内部Tc)时间后,模/数完成转换,转换结果存入数据锁存器,同时INTR自动变为低电平,通知单片机本次转换已结束。
时序分析:当INTR变为低电平后,将CS先置低,接着再将RD置低,在RD置低至少经过tacc(max200ns)时间后,数字输出口上的数据达到稳定状态,此时直接读取数字输出端口的数据便可得到转换后的数字信号,读走数据后,马上将RD拉高,然后再将CS拉高,INTR是自动变化得,当RD置低tr1时间后,INTR自动拉高。上面是启动一次和读取一个数据的时序图,当我们需要连续转换并且连续读走数据时,就没有必要每次都把CS置低再拉高,因为CS是片选信号,只要开始就把CS置低,以后当要启动转换盒读取数据时只需操作WR和RD即可。
实例程序:
#include《reg52.h》
sbitadrd=P3^7;//IO口定义
sbitadwr=P3^6;sbitdiola=P2^5;sbitdula=P2^6;sbitwela=P2^7;
unsignedcharj,k,adval;voidmain()//主程序{
uchara,A1,A2,A2t,A3;while(1){
wela=1;P0=0;//选通ADCS
adwr=0;//AD写入(随便写个什么都行,主要是为了启动AD转换)_nop_();adwr=1;P0=0xff;//关闭ADCSdelay(10);
wela=0;//关闭有AD片选信号锁存器的锁存端以防止在操作数码管时使AD的片选发生变化
for(a=20;a》0;a--)//需要注意的是ADC0804在写和读之间的时间间隔要足够长否则
无法读出数据
{//这里把显示部分放这里的原因也是为了增加写读之间的时间间隔
display(A1,A2,A3);}//送去显示各位。wela=1;//重新打开有AD片选信号锁存器的锁存端P1=0xff;//读取P1口之前先给其写全1P0=0;//选通ADCS
adrd=0;//AD读使能adval=P1;//AD数据读取赋给P1口adrd=1;P0=0xff;//关闭ADCSadwr=0;P1=adval;//同时把AD的值送八个发光二极显示
A1=adval/100;//分出百,十,和个位
A2t=adval%100;
A2=A2t/10;
A3=A2t%10;
};
}
1.零点和满刻度调节
ADC0804的零点无需调整。满刻度调整时,先给输入端加入电压VIN+,使满刻度所对应的电压值是
其中Vmax是输入电压的最大值,Vmin是输入电压的最小值。当输入电压与VIN+值相当时,调整VREF/2端电压值是输出码为FEH或FFH。
2.参考电压的调节
在使用A/D转换器时,为保证其转换精度,要求输入电压满量程使用,如输入电压动态范围较小,则可调节参考电压VREF,以保证小信号输入时ADC0804芯片8位的转换精度。
3.接地
模数、数模转换威廉希尔官方网站 中要特别注意到地线的正确连接,否则干扰很严重,以致影响转换结果的正确性。A/D、D/A及取样-保持芯片上都提供了独立的模拟地(AGND)和数字地(DGND)的引脚。在线路设计中,必须将所有的器件的模拟地和数字地分别相连,然后将模拟地与数字地仅在一点上相连接。地线的正确连接方法如图所示:
全部0条评论
快来发表一下你的评论吧 !