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

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

3天内不再提示

基于FPGA和LTC2308模数转换芯片的数字电压表设计

友晶FPGA ? 来源:友晶FPGA ? 2025-08-16 08:58 ? 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

1教程重点

介绍模数转换原理。

介绍SPI通信协议。

介绍LTC2308工作原理

学习Verilog代码设计。

学习ModelSim仿真

学习Matlab生成正弦信号

2实验任务

通过FPGA对模数转换芯片(LTC2308)的采样控制,实现一个简易的数字电压表。具体功能如下:

设计一个数字电压表,通过拨码开关 SW[2:0]选择 LTC2308 的不同 ADC 通道;按下 KEY[1]触发 LTC2308 启动采样与转换;转换结束后,点亮一颗 LED 作为状态指示;最终转换结果以十进制形式在 HEX[3:0]数码管上显示。

88123c04-7658-11f0-a18e-92fbcf53809c.png

3实验原理分析

关于模数转换原理请参考:

02-基于FPGA和LTC2308的数字电压表设计——模数转换原理(后期发布)

关于LTC2308芯片解读请参考:

03-基于FPGA和LTC2308的数字电压表设计——LTC2308数据手册解读(后期发布)

关于DE10-Standard 开发板LTC2308电路图设定如下:

88242eb4-7658-11f0-a18e-92fbcf53809c.png

该实验的功能设计框图如下:

88378ce8-7658-11f0-a18e-92fbcf53809c.png

4Verilog 代码

工程最终的RTL Viewer图如下:

8848e204-7658-11f0-a18e-92fbcf53809c.png

digital_voltmeter.v: 工程top文件,里面例化了各个模块。

pll_40 IP: 板载50M晶振分频出40M给其他子模块。

adc_ltc2308.v:实现SPI协议去控制LTC2308器件。关于SPI协议详解请参考:04-基于FPGA和LTC2308的数字电压表设计——SPI协议详解(后期发布)。关于代码讲解请参考:05-基于FPGA和LTC2308的数字电压表设计——FPGA实现SPI协议(后期发布)。

bin_to_bcd.v:将二进制数转换成十进制数。

seg_display.v: 将十进制数转换成能在数码管上显示的信号。数码管原理解说请参考往期文章:基于FPGA的贪吃蛇游戏设计(二)——数码管驱动模块

每个模块的源代码参见本文文末的资源下载连接。

5LTC2308控制模块功能仿真

关于LTC2308控制模块的仿真请参考连接:

06-基于FPGA和LTC2308的数字电压表设计——ModelSim仿真与Matlab模拟信号产生(后期发布)。

6实验准备工作

硬件平台:DE10-Standard 开发板

(或者是DE1-SOC、DE25-Standard、C5G、TSP开发板也都支持,DE10-Nano、ADC-SOC、DE0-Nano-SOC 、TSOM(ADC在TSOM-BB底板上)这四种开发板上虽然有LTC2308器件,但是没有数码管显示,所以工程不能直接套用。 另外,针对DE25-Standard开发板需要Quartus Pro v24.1及以上版本才行)

开发和调试工具:Quartus17.1

7实验步骤

1. 在开始菜单里面点击Quartus软件打开它:

8855936e-7658-11f0-a18e-92fbcf53809c.png

2. 按照文章基于DE1-SOC的My_first_fpga去创建一个新的digital_voltmeter工程,top文件Verilog代码直接拷贝digital_voltmeter.zip里面的。

3. 继续创建2个Verilog 文件(seg_display.v和adc_ltc2308.v),代码直接拷贝digital_voltmeter.zip里面的。

4. 在IP Catalog里面输入PLL,并双击打开Altera PLL IP:

8867f3a6-7658-11f0-a18e-92fbcf53809c.png

5. 保存路径选择digital_voltmeter工程下,PLL 模块命名为pll_40:

88760a22-7658-11f0-a18e-92fbcf53809c.png

6. 设置PLL 的参数如下:

888821e4-7658-11f0-a18e-92fbcf53809c.png

7. 对工程进行分析和综合:

8895969e-7658-11f0-a18e-92fbcf53809c.png

8. 进行引脚分配:

根据DE10-StandardManualDE10-Standard_User_manual.pdf手册的引脚分配表或者直接查看DE10-StandardSchematicDE10-Standard.pdf电路图完成以下引脚分配:

88a4c114-7658-11f0-a18e-92fbcf53809c.png

9. 进行工程全编译,生成sof文件:

88be4558-7658-11f0-a18e-92fbcf53809c.png

88ca5b18-7658-11f0-a18e-92fbcf53809c.png

10. 下板验证

没有电位器的话也可以用一根杜邦线完成测试,具体测试如下:

(1)连接开发板的Blaster口到PC,然后连接开发板电源给开发板供电。

(2)继续参考基于DE1-SOC的My_first_fpga将digital_voltmeter.sof配置到FPGA 开发板当中。

(3)切换SW[2:0]=00,选择通道0。

(4)通道0 连接到GND引脚(参考下图找到GND引脚是pin10)

88d6c2b8-7658-11f0-a18e-92fbcf53809c.png

(5)按KEY0复位,按KEY1触发LTC2308进行测量,测得结果如下:

88fb365c-7658-11f0-a18e-92fbcf53809c.jpg

(6)继续选择通道0去连接到3.3V引脚(按照下图找到3.3V对应GPIO插针槽的pin29):

8910bb08-7658-11f0-a18e-92fbcf53809c.png

(7) 按KEY1测得结果如下:

891f94c0-7658-11f0-a18e-92fbcf53809c.jpg

备注:DE10-Standard的数码管没有小数点显示位,所以电路当中没有对小数点进行处理。

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

    关注

    1646

    文章

    22097

    浏览量

    620686
  • Verilog
    +关注

    关注

    30

    文章

    1368

    浏览量

    112548
  • 数字电压表
    +关注

    关注

    4

    文章

    192

    浏览量

    33652
  • 模数转换芯片

    关注

    0

    文章

    28

    浏览量

    9338

原文标题:01-基于FPGA和LTC2308的数字电压表设计(总概述)

文章出处:【微信号:友晶FPGA,微信公众号:友晶FPGA】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    源码系列:基于FPGA数字电压表(AD)设计

    今天给大侠带来基于FPGA数字电压表设计,附源码,获取源码,请在“FPGA技术江湖”公众号内回复“数字
    发表于 05-28 17:29

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

    电压表  数字电子系统通常由ASIC芯片和外围硬件设备组成,具有灵活性不强等缺陷。如图1所示的数字电压表,A/D
    发表于 10-26 15:43

    简易数字电压表的两种实现方式(单片机与模数转换器)

    电压表。 模拟电压表中指针的移动来代表电压的变化。数字电压表可以直接以数字的方式来显示,这都要归
    发表于 09-03 15:21

    怎么利用FPGA实现数字电压表的设计

    怎么利用FPGA实现数字电压表的设计?
    发表于 05-06 10:19

    如何去制作一种数字电压表

    资料下载地址-1077(百度网盘):点击下载数字电压表简称DVM,数字电压表基本原理是将输入的模拟电压信号转化为
    发表于 12-02 06:43

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

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

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

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

    FPGA数字电压表的程序资料免费下载

    本文档的主要内容详细介绍的是FPGA数字电压表的程序资料免费下载。
    发表于 02-26 16:26 ?29次下载
    <b class='flag-5'>FPGA</b><b class='flag-5'>数字</b><b class='flag-5'>电压表</b>的程序资料免费下载

    如何使用FPGA实现数字电压表的设计

    :采用 EDA(电子设计自动化)技术和 FPGA(现场可编程门阵列)芯片设计数字电压表。 整个设计采用 VHDL由 ADC0809转换控制模
    发表于 04-28 08:00 ?8次下载
    如何使用<b class='flag-5'>FPGA</b>实现<b class='flag-5'>数字</b><b class='flag-5'>电压表</b>的设计

    LTC2308:低噪声、500ksps、8通道、12位ADC数据

    LTC2308:低噪声、500ksps、8通道、12位ADC数据
    发表于 04-24 13:19 ?1次下载
    <b class='flag-5'>LTC2308</b>:低噪声、500ksps、8通道、12位ADC数据<b class='flag-5'>表</b>

    基于单片机的数字电压表制作——ADC0832模数转换应用程序(C语言)

    基于单片机的数字电压表制作——ADC0832模数转换应用程序(C语言)(电源技术 投稿)-该文档为基于单片机的数字
    发表于 09-15 11:18 ?27次下载
    基于单片机的<b class='flag-5'>数字</b><b class='flag-5'>电压表</b>制作——ADC0832<b class='flag-5'>模数</b><b class='flag-5'>转换</b>应用程序(C语言)

    基于单片机的数字电压表制作——ADC0832模数转换应用程序

    基于单片机的数字电压表制作——ADC0832模数转换应用程序(通讯电源技术2019)-该文档为基于单片机的数字
    发表于 09-22 16:03 ?42次下载
    基于单片机的<b class='flag-5'>数字</b><b class='flag-5'>电压表</b>制作——ADC0832<b class='flag-5'>模数</b><b class='flag-5'>转换</b>应用程序

    模数转换器SC1641替换AD7793应用于数字电压表(DVM)

    模数转换器SC1641替换AD7793应用于数字电压表(DVM)
    的头像 发表于 12-13 10:03 ?628次阅读
    <b class='flag-5'>模数转换</b>器SC1641替换AD7793应用于<b class='flag-5'>数字</b><b class='flag-5'>电压表</b>(DVM)

    数字电压表的工作特性_数字电压表工作原理

    到7位8位。例如,3?位和4?位数字电压表(DVM)的精度可以分别达到±0.1%和±0.02%。数字电压表通过模数转换器(ADC)将模拟
    的头像 发表于 01-28 13:54 ?1297次阅读

    数字电压表概述_数字电压表的作用

    数字电压表(Digital Voltmeter,简称DVM)是一种采用数字化测量技术,将连续的模拟量转换成不连续、离散的数字形式并加以显示的
    的头像 发表于 01-28 14:14 ?1310次阅读