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采集,这些是以后的提高方面。

  • 1
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值