0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

通过采用CPLD芯片控制实现高精度数字电压表的设计

电子设计 来源:郭婷 作者:电子设计 2019-09-05 08:03 次阅读

1 引言

CPLD ( Complex Programmable Logic Device ) 是新型的可编程逻辑器件,与传统ASIC相比,具有设计开发周期短、设计制造成本低、开发工具先进等优点,特别适合于产品的样品开发和小批量生产。传统的数字电压表多以单片机为控制核心,芯片集成度不高,系统连线复杂,难以小型化,尤其在产品需求发生变化时,不得不重新布版、调试,增加了投资风险和成本。而采用CPLD进行产品开发,可以灵活地进行模块配置,大大缩短了开发周期,也有利于数字电压表向小型化、集成化的方向发展。

2系统原理及组成

系统组成原理框图如图1所示。系统的控制核心是一片CPLD芯片,它由三个功能模块构成: A/D转换时序控制模块、码制变换模块以及显示控制/驱动模块。三个模块的功能分别为发出控制信号启动A/D转换及读取采样值、对AD采样值进行码制转换、发出控制信号驱动LED/LCD显示相应数据。

通过采用CPLD芯片控制实现高精度数字电压表的设计

系统工作原理:测量信号经过信号预处理,变换为0~2.5V范围内的有效信号后送入A/D转换电路中,然后A/D转换时序控制模块发出控制信号,启动A/D转换器进行转换,A/D采样得到的数字信号在码制变换模块中转换为相应的显示代码,最后经显示控制/驱动模块发出控制与驱动信号,推动外部的显示模块(LED/LCD)显示相应的数据。

3CPLD功能模块设计

智能数字电压表的控制核心CPLD的三个功能模块皆用VHDL语言编程实现,下面主要介绍CPLD的三个功能模块的设计。

3.1 A/D转换时序仿真模块AD_CONTROL

ANALOG DEVICES公司生产的AD7715是一片16位的∑-Δ ADC集成电路。它的主要特性有:3V/5V工作电压,单/双极性输入;可编程改变增益为1,2,32,128倍;在单极性输入状态下模拟电压输入范围允许为0~20mV, 0~80mV, 0~1.25V, 0~2.5V不等(有利于提高精度);三线串行接口;支持差分输入;低功耗(450 mF [email=Max@3V]Max@3V[/email])。在本系统中AD7715的作用是将0~2.5V的输入模拟信号转换为16位的高精度的数字信号供CPLD处理。AD_CONTROL模块用于控制AD7715的启动、读、写等操作。设计的AD_CONTROL模块如图2所示,其VHDL语言的ENTITY定义部分如下:

ENTITY AD_CONTROL IS

PORT(

SCLK:OUT STD_LOGIC;

DRDY:IN STD_LOGIC;

DOUT:OUT STD_LOGIC_VECTOR(15 DOWNTO 0);

DIN:IN STD_LOGIC_VECTOR(15 DOWNTO 0);

DB:OUT STD_LOGIC_VECTOR(15 DOWNTO 0);

CP:IN STD_LOGIC

);

END AD_CONTROL;

通过采用CPLD芯片控制实现高精度数字电压表的设计

如图所示,二者的接口信号线直接连接并由AD_CONTROL模块模拟产生AD7715芯片的各个接口信号,完成ADC的启动、读、写操作。AD7715的工作模式由内部寄存器(Communications Register,Setup Register,Test Register,Data Register)中的控制字决定。内部寄存器的数据写入和读出都由CS,DRDY,SCLK信号控制。当 AD7715被访问时,SCLK脚应出现一次带上升沿的高电平,其时钟频率应为9.2kHz。这是关键信号,其他信号均以此信号作为时基。因此,CPLD中的AD_CONTROL模块的功能之一就是提供SCLK 以及其他信号的严格时序。图3、图4分别为AD_CONTROL模块读、写AD7715时序图。

通过采用CPLD芯片控制实现高精度数字电压表的设计

3. 2 码制变换模块DATA_CONVERSION

在此码制变换模块DATA_CONVERSION中主要实现的功能是将AD采样送来的16位的二进制数转换为可被LED/LCD识别的七段LED显示码或字符型LCD码。在本系统中此模块包含了这两种转换功能以适应显示端不同的配置。为了达到这一目的,首先要将16位二进制码变换为BCD码,然后再分别进行转换,得到七段显示码及字符型码。在此模块中各个BLOCK部分的码制变换的VHDL程序可通过WHEN-ELSE语句进行查表来实现。转换的过程如图5所示。

通过采用CPLD芯片控制实现高精度数字电压表的设计

3.3 显示控制及驱动模块DISL_DRIVE

电压值的显示可由LED或LCD实现。在本系统中对于电压值的显示分为mV和V两档,所以需要在后面加上单位来明确,且本系统为低功耗系统,若用LED则功耗相对过大,所以选用了一块8×2字符型液晶显示模块MDSL81809-03,实现了低功耗,而且可带单位双排显示,字体美观大方。 DISL_DRIVE示,整个电路十分简洁。系统工作过程首先由 CPLD对AD7715及LCD进行初始化,然后当有输入信号V i(0~2.5V)到AIN+端后,由CPLD通过接口向AD7715的寄存器中写入控制字,使其对输入的模拟信号进行转换,变为16位的数字信号送到DOUT端,由CPLD经过码制变换等处理后,再通过与LCD的接口驱动并发送数据,将电压值及单模块与LCD的接口如图6所示。图中LCD的RS端需输入方波驱动,这可由CPLD编程提供。当AD7715采样完成后,由DATA_CONVERSION模块将采样数字信号转换为LCD可识别的字符型数据后,送至DISL_DRIVE模块,再由其驱动LCD,将字符型数据送到LCD的D0~D7端,实现显示。

4系统设计和逻辑仿真

CPLD的三个功能模块用VHDL语言描述,进行综合仿真后连接起来的系统电路原理图如图7所位显示在LCD上。

通过采用CPLD芯片控制实现高精度数字电压表的设计

本系统采用的CPLD芯片为ALTERA公司的EPF10K10LC84-4芯片,逻辑门数为10000门,用MAX+PLUSⅡ10.0软件工具开发。设计输入完成后,进行整体的编译和逻辑仿真,然后进行转换、延时仿真生成配置文件,最后下载至CPLD器件,完成结构功能配置,实现其硬件功能。

5 总结

本系统是用CPLD实现的智能数字电压表。随着EDA技术的广泛应用,CPLD已成为现代数字系统设计的主要手段,CPLD目前正朝着更高速、更高集成度、更强功能和更灵活的方向发展。


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 芯片
    +关注

    关注

    455

    文章

    50760

    浏览量

    423362
  • cpld
    +关注

    关注

    32

    文章

    1248

    浏览量

    169344
  • adc
    adc
    +关注

    关注

    98

    文章

    6497

    浏览量

    544531
收藏 人收藏

    评论

    相关推荐

    EDA数字电压表的研究和设计应用

    CPLD芯片EPF10K10LC84-4。CPLD工作主频为100 MHz,逻辑综合占用了174个逻辑单元,资源利用率为30%。本文所设计的数字
    发表于 10-26 15:43

    基于单片机的数字电压表设计与仿真

    摘要:由于纯硬件数字电压表结构复杂,测量精度低,价格高,而在日常使用中,使用频率高,导致万用经常损坏,故障率高,给使用和维修带来很多不便。为了设计一种
    发表于 01-11 09:15

    求一个基于ADS1115芯片数字电压表单片机程序

    该设计是基于单片机的数字电压表设计,要求使用16位高精度数码转换芯片ads1115作为数码转换芯片,利用6位数码管进行显示,测量
    发表于 05-03 18:28

    哪位用现成的数字电压表高精度)手动制作过万用? 求指导

    哪位用现成的数字电压表高精度)手动制作过万用? 求指导
    发表于 01-17 19:35

    采用CPLD实现的智能数字电压表设计

    求一款以CPLD控制核心的16位高精度数字电压表设计方案
    发表于 04-13 06:59

    请问如何利用CPLD实现智能数字电压表的设计?

    如何利用CPLD实现智能数字电压表的设计?数字电压表系统是如何组成的?其工作原理是什么?如何
    发表于 04-13 06:07

    如何去实现一种数字电压表的设计

    高速信号领域,取而代之的将是数字电压表2 开发需求电子技术的发展,经常需要测量高精度电压,所以数字电压
    发表于 12-08 06:42

    语音高精度数字电压表的设计

    数字电压表是现代电子测量中最重要测量仪器之一。设计了一种基于单片机和集成语音芯片的语音数字电压表,由单片机、
    发表于 12-23 16:32 45次下载

    数字电压表的VHDL设计与实现

    数字电压表的VHDL设计与实现 介绍数字电压表的组成及工作原理,论述了基于VHDL语言和FPGA芯片
    发表于 10-12 19:14 1827次阅读
    <b class='flag-5'>数字</b><b class='flag-5'>电压表</b>的VHDL设计与<b class='flag-5'>实现</b>

    基于VHDL和CPLD的智能数字电压表设计

    本系统是用CPLD实现的智能数字电压表。随着EDA技术的广泛应用,CPLD已成为现代数字系统设计
    发表于 11-09 16:24 3613次阅读

    高精度数字电压表设计

    高精度数字电压表设计,国防科学技术大学。
    发表于 12-17 14:52 41次下载

    高精度数字电压表

    高精度数字电压表,很好的资料,快来学习吧。
    发表于 04-19 11:30 49次下载

    采用CPLD器件与单片机实现数字电压表的设计

    设计了基于CPLD数字电压表采用CPLD器件作为核心处理电路,用单片机进行控制,能较好地减小
    的头像 发表于 04-23 08:28 2398次阅读
    <b class='flag-5'>采用</b><b class='flag-5'>CPLD</b>器件与单片机<b class='flag-5'>实现</b><b class='flag-5'>数字</b><b class='flag-5'>电压表</b>的设计

    高精度数字交流电能电路电压/电流/功率KWh

    电子发烧友网站提供《高精度数字交流电能电路电压/电流/功率KWh.zip》资料免费下载
    发表于 08-11 11:52 2次下载
    <b class='flag-5'>高精度数字</b>交流电能<b class='flag-5'>表</b>电路<b class='flag-5'>电压</b>/电流/功率KWh

    数字电压表的原理与特点

    数字电压表(DVM,也称为数字多用表或简称DMM)是现代电子测量领域中不可或缺的一种测量仪器。与传统的模拟电压表相比,数字
    的头像 发表于 05-21 16:54 2208次阅读