EDA数字电压表设计报告_第1页
EDA数字电压表设计报告_第2页
EDA数字电压表设计报告_第3页
EDA数字电压表设计报告_第4页
EDA数字电压表设计报告_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

课程设计任务书课 题 名 称 数字电压表设计系别电子信息工程系专 业班级学号姓名指 导 老 师 2015年6月20日 前 言EDA是电子设计自动化(Electronic Design Automation)的缩写,在20世纪60年代中期从计算机辅助设计(CAD)、计算机辅助制造(CAM)、计算机辅助测试(CAT)和计算机辅助工程(CAE)的概念发展而来的。 EDA技术就是以计算机为工具,设计者在EDA软件平台上,用硬件描述语言VHDL完成设计文件,然后由计算机自动地完成逻辑编译、化简、分割、综合、优化、布局、布线和仿真,直至对于特定目标芯片的适配编译、逻辑映射和编程下载等工作。本电压表的电路设计正是用VHDL语言完成的 。此次设计采用的是Altera公司 的Quartus II 7.0软件。本次设计的参考电压为2.5V,精度为0.01V。此电压表的设计特点为通过软件编程下载到硬件实现,设计周期短,开发效率高。 目 录一、绪 论3二、设计要求3三、设计过程4 1、系统总体框图4 2、数字电压表的基本原理4 3、显示方案4四、单元电路设计5 1、A/D转换控制模块5 ADC0809工作原理5 ADC0809工作时序6 CPLD控制ADC采样状态机 6 2、模拟电压的计算6 码制变换模块6 3、显示控制及驱动模块74、ADC0809引脚连接8五、软件设计9 1、 开发软件及编程语言简介9 2、 程序流程图9 3、结论9六、总结设计的收获与体会9附录1 程序清单一、绪 论 数字电压表(Digital Voltmeter)简称DVM,是大学物理教学和实验中的重要仪表,其数字化是指将连续的模拟电压量转换成不连续、离散的数字量并加以显示。传统的实验用模拟电压表功能单一、精度低、体积大,且存在读数时的视差,长时间连续使用易引起视觉疲劳,使用中存在诸多不便。而目前数字万用表的内部核心多是模数转换器,其精度很大程度上限制了整个表的准确度,可靠性较差。 传统的数字电压表设汁通常以大规模ASIC(专用集成电路)为核心器件,并辅以少量中规模集成电路及显示器件构成。ASIC完成从模拟量的输入到数字量的输出,是数字电压表的心脏。这种电压表的设计简单、精确度高,但是这种设计方法由于采用了ASIC器件使得它欠缺灵活性,其系统功能固定,难以更新扩展。后来发展起来的用微处理器(单片机)控制通用A/D转换器件的数字电压表的设计的灵活性明显提高,系统功能的扩展变得简单,但是由于微处理器的引脚数量有限,其控制转换速度和灵活性还是不能满足日益发展的电子工业的需求。而应用EDA技术及FPGA,其集成度高、速度快、性能十分可靠、用户可自由编程且编程语言通俗易懂、系统功能扩展非常方便。采用FPGA芯片控制通用A/D转换器可使速度、灵活性大大优于由微处理器和通用A/D转换器构成的数字电压表。 本设计的A/D转换器件选用ADC0809对模拟电压采样,以一片高性能FPGA芯片为控制核心,以软件实现了诸多硬件功能,对电压信号的转换结果进行准确实时的运算处理并送出显示。系统的主要功能都集成在一块芯片上,大大减少了系统的分立元件数量,降低了功耗,增加了可靠性,较好地实现了电压的精准测量。 二、设计要求 设计一个数字电压表,利用8位A/D转换器,将连续的模拟电信号转换成离散的数字电信号,并加以显示,要求其量程为0-5V,分辨率约为0.02V,三位数码管显示,其中一位为整数,两位为小数,能正确显示小数点。 三、设计过程 1、系统总体框图图1.4 系统总体框图2、数字电压表的基本原理 数字电压表系统由A/D转换控制模块、数据转换模块、动态扫描与译码模块三部分构成。A/D转换控制模块控外部A/D转换器,动态扫描与译码模块向外部数码管显示电路输出数据。A/D转换器负责采集模拟电压,转换成8位数字信号送入CPLD的A/D转换控制模块,A/D转换控制模块负责A/D转换的启动、地址锁存、输入通道选择、数据读取等工作,数据转换模块将8位二进制数据转换成16位十进制BCD码送入动态扫描与译码模块,最后通过数码管显示当前电压值。四、单元电路设计1、A/D转换控制模块 作为A/D转换器的ADC0809,片内有8路模拟开关,分辨率为8位,转换时间约100us,含锁存控制的8路多路开关,输出由三态缓冲器控制,单5V电源供电。 分辨率是指A/D转换器能分辨的最小模拟输入量,通常用能转换成的数字量的位数来表示,如8位、10位、12位、16位等。位数越高,分辨率越高。例如,对于8位A/D转换器,当输入电压满刻度为5V时,其输出数字量的变化范围为028-1,转换电路对输入模拟电压的分辨能力为5V/(28-1)19.6mV。 量程是指A/D转换器所能转换的输入电压范围。 如图所示为ADC0809芯片的封装引脚图,由图可知芯片有28只引脚,采用双列直插式的封装。 各引脚功能如下: IN7IN08路模拟信号输入通道。ADC0809对输入的模拟量要求主要为:信号单极性,电压范围05V。 ADDA、ADDB、ADDC3位地址线。ADDA为低位地址,ADDC为高位地址,组成3位二进制码000111,分别选中IN0IN7。 2ALE地址锁存允许信号,高电平时允许ADDA、ADDB、ADDC所示当前通道被选中,上升沿时将通道地址锁存至地址锁存器中。START启动转换信号。START上升沿时,所有内部寄存器清0;START下降沿时,开始进行A/D转换。在A/D转换期间,START保持低电平。 EOCA/D转换结束信号。EOC=0,正在进行转换;EOC=1,A/D转换完毕,常用作中断申请信号。 OE输出允许信号,高电平有效,用来打开三态输出锁存器。OE=0,输出数据线呈高阻态;OE=1,输出转换得到的数据。 CLOCK外部时钟脉冲输入端。ADC0809内部没有时钟电路,所需时钟信号由外界提供,要求频率范围10KHz1.5MHz。 D7D0数据输出线。为三态缓冲输出形式。 Vcc单5V电源。 GND接地。 如图所示,为ADC0809工作时序图。IN0IN7是模拟信号的输入端,通过ADDC、ADDB、ADDA地址选择信号来选择模拟信号具体从哪个端口输入,当ALE产生上升沿,地址信号就存入地址寄存器,下降沿时则开始A/D转换;EOC为低电平时表示A/D转换进行中,高电平时表示A/D转换结束;OE位低电平时,输出数据线高阻态,当 3OE出现高电平,则打开三态输出锁存器,输出八位数据D7D0。 CPLD控制ADC采样状态图 COM: PROCESS(cs,EOC) BEGIN - 主控进程,规定各状态转换方式 CASE cs IS WHEN st0=ALE=0;START=0;LOCK=0;OE=0; next_state ALE=1;START=1;LOCK=0;OE=0; next_state ALE=0;START=0;LOCK=0;OE=0; IF (EOC=1) THEN next_state = st3; -EOC=1表明转换结束 ELSE next_state ALE=0;START=0;LOCK=0;OE=1; next_state ALE=0;START=0;LOCK=1;OE=1; next_state ALE=0;START=0;LOCK=0;OE=0;next_state = st0; END CASE ; END PROCESS COM; 2、模拟电压的计算电压值=采样值/255*参考电压取小数点后两位CLOCKSTARTEOCOE功能有效 0 0 0A/D开始转换有效 0 1 0转换结束有效 0 1 1允许数据输出 DIV_TEMP= REGL * 00000101; =REGL*5V(参考电压) REGL_T1 = DIV_TEMP(15 DOWNTO 8); /255*5 电压整数部分 DIV_TEMP1 = DIV_TEMP( 7 DOWNTO 0)*00001010; REGL_T2 = DIV_TEMP1( 15 DOWNTO 8); 小数点后第一位 DIV_TEMP2 =DIV_TEMP( 7 DOWNTO 0)*00110010; REGL_T3 BT_T = 111110 ; A BT_T = 111101 ; A BT_T = 111011 ; A NULL; END CASE ; BT = BT_T;3、显示控制及驱动模块采用LED数码管,采用数码管动态显示,数码管具有结构简单、低损耗、寿命长、耐老化、成本低、对外界要求低、易于维护、操作简单,编程简单等优点。但是也有一个明显的缺点,即显示的信息量非常有限,只能显示几个有限的阿拉伯数字与字母,电路图如图1.3.1所示。图1.3.八段发光二极管显示器原理结电压值的显示:最常用到的二进制转换成BCD码的方法是用除法。先用得到的16位二进制数除以10000,得到的商就是模拟电压值的整数部分(模拟电压的输入为0-5V,所以整数部分只有1位),得到的余数是模拟电压值的小数部分;接下来用余数除以1000,商是十分位,余数作为被除数再除以100,商为百分位,余数再除以10,商为千分位。这样就将16位的二进制数转换成了4位BCD码。电压值的显示可由数码管实现。本系统选用了三个数码管显示。整个电路十分简洁。系统工作过程首先由 FPGA对ADC0809及数码管进行初始化,然后当有输入信号V i,由FPGA通过接口向ADC0809控制信号控制字,使其对输入的模拟信号进行转换,变为8位的数字信号送到输出端,由FPGA经过码制变换等处理后,再通过与数码管的接口驱动并发送数据。当ADC0809采样完成后,由码字变换模块将采样数字信号转换为数码管段码,实现显示。 ADC0809引脚连接五、软件设计1、开发软件及编程语言简介系统采用硬件描述语言VHDL按模块化方式进行设计,并将各模块集成于FPGA芯片中,然后通过Quartus II软件开发平台对设计文件自动地完成逻辑编译、逻辑化简、综合及优化、逻辑布局布线、逻辑仿真,最后对FPGA芯片进行编程,实现系统的设计要求。采用VHDL超高速集成电路硬件描述语言设计复杂数字电路的方法具有很多优点,VHDL语言的设计技术齐全、方法灵活、支持广泛。VHDL语言的系统硬件描述能力很强,具有多层次描述系统硬件功能的能力,可以从系统级到门级电路,而且高层次的行为描述可以与低层次的RTL描述混合使用。VHDL在描述数字系统时,可以使用前后一致的语义和语法跨越多层次,并且使用跨越多个级别的混合描述模拟该系统。因此,可以对高层次行为描述的子系统及低层次详细实现子系统所组成的系统进行模拟。2、程序流程图图3.2.1 系统程序流程图3、 结论数码管显示电压值2.51V1.26V0.33V万用表测得电压值2.447V1.221V0.320V六、总结设计的收获与体会这次课程设计综合了数电学习的大部分内容,是对我数电知识的一次综合的考量。此次设计不仅考量了我们对数电知识的掌握,同时还考验了我们个人的独自

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论