IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 嵌入式 -> FPGA电压表设计 -> 正文阅读

[嵌入式]FPGA电压表设计

组合逻辑电路设计实验(电压表设计)

  • 实验目的和要求*(目的5分,要求5分)

1.1实验目的:

  1. 通过实验,熟悉 Verilog 语言以及硬件电路编程思想;
  2. 能够基于基本的硬件组合电路设计出具有实际意义的功能模块;
  3. 能够对自己设计的硬件电路进行仿真模拟验证同时移植到真实的硬件电路上运行成功

1.2实验要求:

  1. 设计一款组合逻辑电路,电路内容自定义
  2. 用硬件编程语言仿真,编译成功后下载到虚实结合平台
  3. 如果需要,可搭建外围电路验证所设计的组合逻辑电路的逻辑
  • 实验原理和内容*(原理15分,内容5分)

2.1实验原理:

2.1.1模数转换电路 (ADC0809功能模块)

1)引脚示意图

?

2)地址码与输入通道的对应关系

2.1.2 FPGA采集AD数值并显示

?????? 1)将ADC模块的输出引脚对应FPGA的对应输入引脚

2)数码管显示模块

?????? 分析:为8421数码管,ABCD四个通道输入对应的8421码,便可以显示对应的0-9之间的数值,本实验中我们用来显示AD采集到的的电压数值。

2.2实验内容:

?????? 1)自主设计组合逻辑实验电路

??? 2)在上述基础上基于基本的硬件组合电路设计出具有实际意义的功能模块

??? 3)能够对设计出的硬件电路进行仿真验证并实际在下载到平台上进行测试

三、主要仪器设备(10分)

??????? ?????名称?????????????? ?型号或规格

 

FPGA

 EP4CE6F17C8

电压表

提供稳定电压

ADC0809

ADC采集模块

数码管

8421数码管

发光二极管

测试使用

四、实验步骤及操作方法*(共20分,其中电路图和参数10分)

4.1 硬件逻辑编程

??? 1)ADC0809时钟产生,通过FPGA的时钟降频产生(频率最高不要超过100K),同时连接复位通道,低电平实现复位。

2)数码管显示模块

.2硬件电路布线

?????? 根据自己设计的电路与对应的ADC0809模块引脚连接

4.3仿真电路验证

?????? 通过proteus进行仿真验证自己的设计

?? 仿真结果:

分析:初步来看,是可以实现预期的实验效果,虽然有误差,但是在可以接收的实验范围之内。

4.4实际搭建硬件电路

1)ADC0809模块驱动使用

·VCC:电源,接+5V

·GND:接地

·CLK:接时钟信号

·OE:数据输出使能

·EOC:AD转换信号结束标志,连接发光二极管用来判断转换标志

·START:AD转换开始的使能信号

·ALE:地址锁存允许信号,连接高电平使能即可

·ADDA:连接高电平,用来选择通道一

·DIN1:电压表输入通道,连接电压表

·AD0-8:AD转换输出信号,连接FPGA对应的输入通道

2)FPGA外围电路接线

4.5 导入rbf文件到虚拟平台上,并且多次改变电压表表值

?????? 分析:首先按下复位按键,当观察到发光二极管L8闪亮时,说明AD转换已经结束,这时可以观察数码管显示的结果,并且与直流电压表的数值进行对比,同时记录实验过程中产生的误差,多次测量,电压表能够给出电压范围是0-3.3V,但是我们在低电压和高电压的位置都要进行多次采样取值。

五、实验数据记录和处理(根据实验需要自行撰写20分)

5.1实验结果显示

当实验得到的数据结果 ,在输入电压范围在0-3.3V之间变化时,测得的电压值显示如下,完整的实验结果在下面的百度网盘链接里面:

链接:https://pan.baidu.com/s/18MkjKfM546Tue9fUFkgylg

提取码:7s5i

实验次数

直流电压

测量值

0.12

0.12

0.18

0.18

0.29

0.30

0.56

0.56

0.89

0.89

1.23

1.24

1.85

1.85

2.12

2.12

2.85

2.85

10

3.12

3.12

5.2实验过程出现的错误信号以及分析

1)有的时候转换不稳定,我预期估测应该是实验室网络不稳定,并且会出现有时数码管并没有连接线都会显示数值,如下所示:

2)电压转换上下存在0.01V左右的误差,误差率在1%以内(偶尔会出现),对于高低电压都差不多可以实现100%的准确率。

六、实验结果与分析 20分)

????? 1)自己设计的电压表整体上比较满意,综合利用了虚拟实验平台上提供的实验器材,并且没有拘泥于只是设计简单的组合逻辑电路,而是综合考量能够利用的实验设备,设计出有实际应用价值的功能设备,对于我而言,更有成就感。

??? 2)另外就是在事先仿真阶段,我并没有利用FPGA进行仿真,而实利用proteus自带的单片机进行仿真,但是实际运行的原理是相似的。

3)虽然这次实验看上去精确度比较高,但是实际上只有8位的精确度,也就是本次实验采用的AD模块只有8位的转换精准度,之所有看不出实验区别,是因为我们虚拟平台上的直流电源也是只有8位的精准度,只能产生0.01V的精准电压,并不能再产生更加精准度的电压值。

七、讨论、建议、展望 10 分)

????? 这次组合逻辑实验,我设计的实验项目是电压表设计,刚开始考虑过一些简单的组合逻辑项目,但是做着做着发现虚拟实验平台上提供了AD模块,在网上查阅相关资料后,发现是可以在自己能够接受的实验范围之内,难度也不是特别的大,经过自己几天的时间研究琢磨,终于研究出模块的使用方法,并且利用FPGA搭建好外围电路用来驱动AD模块实验电压采集并且通过数码管进行显示,期间主要困扰我的是仿真过程,由于并没有找到类似的仿真模块,我只能进行比较粗略的范围仿真,实际操作时比较费时间。

??? 这次的电压表只有8位的精准度,后续如果能够提供更高精准度的AD模块,或者也是可以尝试自己利用FPGA实现AD采集,这些是以后的提高方面。

  嵌入式 最新文章
基于高精度单片机开发红外测温仪方案
89C51单片机与DAC0832
基于51单片机宠物自动投料喂食器控制系统仿
《痞子衡嵌入式半月刊》 第 68 期
多思计组实验实验七 简单模型机实验
CSC7720
启明智显分享| ESP32学习笔记参考--PWM(脉冲
STM32初探
STM32 总结
【STM32】CubeMX例程四---定时器中断(附工
上一篇文章      下一篇文章      查看所有文章
加:2022-01-29 23:14:49  更:2022-01-29 23:15:21 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 10:50:50-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码