



如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
学生实验报告 系别电子信息学院课程名称《EDA综合实验》班级14无线技术实验名称ADC采样控制电路设计姓名实验时间2016年11月14日学号指导教师王红航成绩批改时间2016年月日报告内容一、实验目的和任务 1.学习用状态机对A/D转换器ADC0809的采样控制电路的实现。 二、实验原理介绍 ADC0809是CMOS的8位A/D转换器,片内有8路模拟开关,可控制8个模拟量中的一个进入转换器中。ADC0809的分辨率为8位,转换时间约100us,含锁存控制的8路多路开关,输出有三态缓冲器控制,单5V电源供电 主要控制信号说明:如图8-5所示,START是转换启动信号,高电平有效;ALE是3位通道选择地址(ADDC、ADDB、ADDA)信号的锁存信号。当模拟量送至某一输入端(如IN1或IN2等),由3位地址信号选择,而地址信号由ALE锁存;EOC是转换情况状态信号(类似于AD574的STATUS),当启动转换约100us后,EOC产生一个负脉冲,以示转换结束;在EOC的上升沿后,若使输出使能信号OE为高电平,则控制打开三态缓冲器,把转换好的8位数据结果输至数据总线。至此ADC0809的一次转换结束了。 。 三、设计代码(或原理图)、仿真波形及分析 moduleADC0809(D,CLK,EOC,RST,ALE,START,OE,ADDA,Q,LOCK_T); input[7:0]D;//来自0809转换好的8位数据 inputCLK,RST;//时钟和复位信号 inputEOC; outputALE; outputSTART,OE; outputADDA,LOCK_T; output[7:0]Q; regALE,START,OE; reg[7:0]REGL;//数据锁存输出 parameters0=0,s1=1,s2=2,s3=3,s4=4;//定义各状态子类型 reg[4:0]cs,next_state; regLOCK; always@(posedgeCLKorposedgeRST)//时序过程 begin if(RST)cs<=s0; elsecs<=next_state; end always@(posedgeLOCK)//寄存器过程 if(LOCK)REGL<=D; assignADDA=0; assignADDB=0; assignQ=REGL; assignLOCK_T=LOCK; always@(csorEOC)begin//组合过程 case(cs) s0:next_state<=s1; s1:next_state<=s2; s2:if(EOC==1'b1)next_state=s3; elsenext_state=s2; s3:next_state<=s4; s4:next_state<=s0; default:next_state=s0; endcase end always@(cs)begin case(cs) s0:beginALE=0;START=0;OE=0;LOCK=0;end//初始化 s1:beginALE=1;START=1;OE=0;LOCK=0;end s2:beginALE=0;START=0;OE=0;LOCK=0;end s3:beginALE=0;START=0;OE=1;LOCK=0;end s4:beginALE=0;START=0;OE=1;LOCK=1;end default:beginALE=0;START=0;OE=0;LOCK=0;end endcase end endmodule 从硬件仿真中,可以得到几组数据 输出数字量模拟电压量0F0.321F0.652F0.943F1.20当输出数字量不同时,它的电压量也就不同。其实就是数模转换过程。 四、实验结论与心得 通过本次实验,进一步掌握了状态机的verilog设计方法和设计仿真工具的使用,学习层次化设计方法。熟悉了状态机的设计思路和方法,通过对仿真波形的分析,对ADC0809控制A/D转换有了更深的理解。实验中通过A/D转换将模拟信号转换为数字信号。通过引脚的锁定,我们最终能够在实验箱上看到仿真的结果。一分耕耘一分收获,只有自己动手做了才能够明白其中的意义。

王子****青蛙
实名认证
内容提供者


最近下载