欢迎来到天天文库
浏览记录
ID:59063933
大小:359.50 KB
页数:12页
时间:2020-10-29
《北京化工大学生产实习报告.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、北京化工大学2012年生产实习报告实习项目ADC0809采样控制电路的实现实习时间2012.06.25—2012.07.11指导教师聂伟学院信息科学与技术学院班级信工0903实习组长小组成员一设计要求1、设计VHDL汇编语言,编写ADC0809采样控制电路程序。2、对设计好的程序给出正确的仿真波形。3、对仿真波形进行硬件实现。二设计原理基本原理:ADC(又称A/D)是将模拟信号转换成数字信号的电路。描述它的主要技术指标有:分辨率与量化误差、转换速度、温度系数、电源抑制。实现信号的模数转换需经过采样、保
2、持、量化、编码四个过程,采样就是将时间上连续变化的模拟信号定时加以检测,取出某一时刻的值,得到时间上断续的信号。为了得到一个稳定的值,要求将采样后所得到的模拟信号保持一段时间,直到下一个脉冲信号的到来,经保持后获得的不再是一串脉冲,而是一个阶梯脉冲信号。量化就是将采样保持后获得时间上的离散、幅度上连续变化的模拟信号取整变为离散量的过程。量化后的信号数值用二进制代码表示,即为编码。ADC0809是CMOS的8位(反馈)集成逐次比较型A/D转换器,片内有8路模拟开关,可控制8个模拟量中的一个进入转换器中。A
3、DC0809的分辨率为8位,转换时间约100us,含锁存控制的8路多路开关,输出有三态缓冲器控制,单5V电源供电,如图1。引脚简介:1、IN7~IN0——模拟量输入通道2、A、B、C——地址线。3、ALE——地址锁存允许信号4、START——启动转换信号5、D7~D0——数据输出线。图1ADC0809引脚图6、OE——输出允许信号。7、CLOCK——时钟信号。8、EOC——转换结束状态信号9、REF(+)、REF(-)——参考电压。ADC0809的内部结构如下: 其中,ALE为地址锁存允许输入端,该信号
4、的上升沿使多路开关的地址码ADDA、ADDB、ADDC锁存到地址寄存器中。ST为启动信号输入端,此输入信号的上升沿使内部寄存器清零,下降沿使A/D转换器开始转换。EOC为A/D转换结束信号,它在A/D转换开始,由高电平变为低电平;转换结束后,由低电平变为高电平。此信号的上升沿表示A/D转换完毕,常用作中断申请信号。OE为输出允许信号,高电平有效,用来打开三态输出锁存器,将数据送到数据总线。D7--D0为8位数据输出端,可直接接入数据总线。CLK为时钟信号输入端,时钟的频率决定A/D转换的速度。A/D转换
5、器的转换时间Tc等于64个时钟周期。CLK频率范围为10——1280KHz。当时钟脉冲频率为640KHz时,Tc为100us。REF(+)和REF(-)为基准电压输入端,他们决定了输入模拟电压的最大值和最小值。 ADDA、ADDB、ADDC:3位地址输入线,用于选通8路模拟输入中的一路。如下表所示 ADDA、ADDB、ADDC真值表三硬件设计、焊接与调试四软件设计与仿真1、VHDL代码如下:LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;ENTIT
6、YADCINTISPORT(D:INSTD_LOGIC_VECTOR(7DOWNTO0);CLK,EOC:INSTD_LOGIC;ALE,START,OE,ADDA,LOCK0:OUTSTD_LOGIC;Q:OUTSTD_LOGIC_VECTOR(7DOWNTO0));ENDADCINT;ARCHITECTUREbehavOFADCINTISTYPEstatesIS(st0,st1,st2,st3,st4);——定义各状态子类型SIGNALcurrent_state,next_state:states:
7、=st0;SIGNALREGL:STD_LOGIC_VECTOR(7DOWNTO0);SIGNALLOCK:STD_LOGIC;——转换后数据输出锁存时钟信号BEGINADDA<='1';——当ADDA<=’0’,模拟信号进入0809通道0;当ADDA<=’1’;则进入通道1Q<=REGL;LOCK0<=LOCK;COM1:PROCESS(current_state,EOC)BEGIN——规定各状态转换方式CASEcurrent_stateISWHENst0=>next_state<=st1;——080
8、9初始化WHENst1=>next_state<=st2;——启动采样WHENst2=>IF(EOC='1')THENnext_state<=st3;——EOC=1表明转换结束ELSEnext_state<=st2;——转换未结束,继续等待ENDIF;WHENst3=>next_state<=st4;——开启OE,输出转换好的数据WHENst4=>next_state<=st0;WHENOTHERS=>next_state<=st0;END
此文档下载收益归作者所有