基于FPGA数字电压表设计及实现.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于FPGA数字电压表设计及实现

基于FPGA数字电压表设计及实现   摘要:针对传统的数字电压表可靠性低问题,该文提出了一种基于FPGA数字电压表的系统的设计。系统以Altera公司的高性能的FPGA芯片EP2C5T144C8N为控制核心,用硬件语言实现了数据采集、转换、显示等系统所需模块,通过硬件下载和测试,测试结果表明,该数字电压表测量系统可测量0~10V电压值,且精度较为0.02V。此设计方法可靠性较强。   关键词:数字电压表;数据采集;FPGA;EP2C5T144C8N   中图分类号:TF368 文献标识码:A 文章编号:1009-3044(2017)17-0256-03   随着电子技术的飞速发展,数字仪表在测量领域的作用显得更加重要,而数字电压表是数字仪表的核心,由于传统的数字电压表体积较大,精度较低,可靠性较差等缺点,本文提出了一种基于FPGA数字电压表的系统。该系统采用8位A/D转换器芯片ADC0809对输入的模拟电压进行采样,用FPGA芯片作为整个系统的控制核心,采用模块化设计方法对系统各个模块进行硬件设计,通过把整个系统设计下载到一片FPGA芯片上并通过显示模块进行显示测量电压的大小,系统能很好的显示要测量的电压量。且整个系统是在一片芯片上实现的,大大减少了传统设计系统的分立元件数量,降低了系统的耗能,增加了可靠性,且能较好地实现了电压的精准测量。   1系统设计   整个系统可以划分为FPGA芯片控制和A/D转换两部分,其中A/D转换芯片ADC0809的作用是将系统输入的模拟信号转换成数字信号,将转换后的数字信号送入FPGA芯片以待运算和处理;七段数码管的作用是将经FPGA转换后的BCD数据显示;FPGA芯片的作用是处理和协调,其中包含控制A/D数据的转换、接收A/D转换后的结果并进行编码、显示等。系统的总体框图如图1所示。   2系统的软件设计   当系统处于工作状态时,先将经A/D转换后的8位数据送入减法器,判断其极性以得到正确的信号正负值。然后将减法器输出的正确信号值送入移位寄存器,将其左移两位使得8位信号变为10信号。移位之后把数据送到可预置值减法计数器中,当有信号置入,减法计数器与加法计数器便同时开始工作,当减法计数器计数(减1计数)完毕,给加法计数器发送一个停止计数的信号,此时加法计数器停止计数,随后将加法计数器的三组BCD码值送入译码器,将三组BCD码译码为可驱动七段显示器的信号,并将之与一组代表极性的信号同时显示于七段显示器上。整个信号处理电路流程图如图2所示。   3系统的硬件设计   整个系统的硬件电路设计由控制模块、信号处理模块以及显示模块构成。将待测量信号(电压信号)送入A/D转换器,再由控制模块发出控制信号,启动A/D转换器的START开始转换,通过A/D周期采样得到的数字信号在信号处理模块中被转换为与电压信号对应的显示代码,随后显示模块发出控制与驱动信号,推动外部的显示器(LED)显示相应的数值,整个系统由外设键盘对系统进行复位操作。信号处理模块,将采集到的信号转换成与电压信号对应的数字显示信号。显示模块,是将信号处理模块对应输出的BCD码译成7段数码驱动值来显示。整个系统处于工作状态时,按固定的采样周期获取电压信号,经ADC0809转换为8位数字信号,此8位数字信号经FPGA芯片信号处理获得对应的12位数字码,再将这12位数字码显示信号导人数码管进行被测电压的显示。对ADC0809来说,它的输出共有256位,这表明芯片的分辨率为1/256,假设输入电压Vin为0~5V,则它的输出电压最小值是5/(256-1)=0.019V,这表明ADC0809所能处理的电压最小值约为0.02V,整个系统每个模块都是采取VHDL在QuartusⅡ编译环境下设计,整个顶层设计连接如图3所示,ADC控制仿真波形和整个电路的仿真波形如图4、5所示。   在AD转换控制器中,ST为时钟信号输入端,仿真是输入一个时钟信号。ECO为转换结束信号,当AD转换结束时,此端输出一个高电平(在转换期间ECO一直为低电平)。OE:数据输出允许信号,高电平有效,当AD转换结束时此端输出一个高电平,才能打开输出三态门,输出数字量。sta:AD转换启动脉冲输入端,输入一个正脉冲时期启动(上升沿使ADC0809复位,下降沿启动AD转换)。ale:地址锁存允许信号,高电平有效。adda:三位地址输入线,用于选通八路模拟输入中的一路。df7…0):输入电压。q:输出电压。   Start为A/D转换启动使能位,高电平使能,alee为信号输入选通端口锁存位,上升沿使能;start使能后,?钐?显示位eoccc变为低电平,使整个系统进人转换模式,在此模式下st2对eoec信号位测试,要是为低电平则说明转换还没有完成,仍保持在st2下

文档评论(0)

bokegood + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档