数字系统实验--第13周任务

  • 任务书
    • 0.简介
    • 1. 实验操作:1周
    • 2. 完成并在线提交文档(100%)
      • 日志(系统功能描述)
      • 报告(目的 设计 实现 总结)
    • 3. 三位数码管数据显示实验在线验收
  • 三位数码管实验——实验日志及报告
    • 1. 实验日志
      • 1.1三位数码管实验下载与观察
      • 1.2示波器测量位选信号和时钟信号
    • 2. 实验报告
      • 2.1实验目的
      • 2.2设计
      • 2.3实现
      • 2.3.3顶层优化
    • 3. 总结

工程链接:pan.baidu.com/s/1ePuW8p2bFjpXghkmtYCm9g
提取码:1gdu
仅供参考

任务书

0.简介

完成3位数码管动态扫描显示实验并完成测量,在线提交文档并完成验收。

1. 实验操作:1周

步骤:
① 复习阅读课程平台上“三位数码管1(第一次)”、“三位数码管2(第二次)”、“三位数码管3(第三次)”中各部分内容;
② 观看“三位数码管1(第一次)”/1-3/案例结果中的下载和操作视频;
③ 在“三位数码管验收(第四次)”中下载文件:test_7segZ1.pdsprj。进行工程仿真,记录实验结果。
图纸选用的资源如下:
74161、74LS00、7474、power、ground、74HC257、switch、DIPSW_8、RES、74HC138、NOT、NOR_2、7SEG-MPX4-CC-BLUE、信号发生器、示波器
④ 示波器测量时钟信号CLK以及位选信号,微调信号发生器的频率,观察示波器的显示结果并分析说明;
⑤ 拨动拨码开关,观察7SEG-MPX4-CC-BLUE的显示数字完成实验报告中对应部分:
提供的工程电路如下:

2. 完成并在线提交文档(100%)

日志(系统功能描述)

时间:(记录日志的时间)
◆ 3位数码管实验下载到实验板上的操作说明以及现象描述:(5%)
◆ 示波器测量位选信号和时钟信号的截图+文字说明:(15%)(proteus仿真观察)

报告(目的 设计 实现 总结)

  • 实验目的(含目标和资源):(5%)

  • 设计
    ◆ 模4计数器顶层电路图(含管脚分配的)截图+文字说明(10%)
    ◆ 模4计数器下载现象描述并举证从验证实验时的现象上如何看出你实现的电路行为正确并下结论。(10%)
    ◆ 比较仿真验证与下载验证2种方法(10%)

  • 实现
    ◆ 顶层电路截图(带附加电路与管脚分配),并说明各模块的功能与实现方式等方面;(10%)
    ◆ 下载实作截图,列表记录输入0-f时,7449译码符号的显示情况;(5%)(“三位数码管1(第一次)”/1-3/案例结果中的下载和操作视频)
    ◆ 在不删除7449的情况下,如何优化让其能正确显示数据“A-F”; 说明自己的设计思路并在proteus中实现;(20%)

  • 总结 (10%)
    总结从以下4个方面中任选3个来写:
    【1】 学到的知识;
    【2】 掌握的技能;
    【3】 人文:文字记录社交、生活心得
    【4】 记忆:归纳2~4类重要点图示记忆方法

3. 三位数码管数据显示实验在线验收

三位数码管实验——实验日志及报告

1. 实验日志

实验日期:2020.5.20
计科1802 展双龙 201808010205

1.1三位数码管实验下载与观察

1.1.1操作说明:
待完成时序验证、管脚分配后:
将下载电缆线与USB接口连接,打开实验板电源开关。选择Tools->Programmer命令进入下载窗口(尚无实验板);单击Hardware Setup键,进入电缆配置窗口,USB版电缆在Available hardwa items列表选择USB-Blaster;然后选择Add File,选中.sof文件完成配置;
选择Add Hardware,在Hardware type列表中选择ButeBlaster II项,Port栏为LPT1,之后Start,Progress栏中出现100%则下载成功。
1.1.2 实验现象:
下载成功后,三位数码管显示的都是0,且持续显示,熄灭时间极短,X0、Y7二极管常亮,拨动CLK开关,降低时钟频率,三个数码管依次显示;对三个通道分别进行设置,将配置的拨码开关相应的调整后可以看到数码管显示出相应的数字。

1.2示波器测量位选信号和时钟信号

【位选信号、时钟信号截图】

【说明】
黄色为时钟信号,蓝色为位选信号,信号发生器的频率调为10HZ;
这里三个数码管循环显示,在计数器的时候产生的是0,1,2,3,时间比为2:1:1:1其中0表示了一个数码管,1表示了一个数码管,2,3共同表示了一个数码管,导致最终的三个数码管的时间之比为2:1:2,可以借此算出频率;
因为位选信号从0-3循环展示,且这里的sel信号为选择信号高位,因此,示波器的位选信号部分在时钟两个周期中变一次;

2. 实验报告

2.1实验目的

A.结合三位数码管显示实验,熟悉软件quartusII的使用,熟悉FPGA开发模式; 
B.熟悉DDA系列数字系统实验平台的使用;
C.在DDA—IIIA实验平台上完成三位数码管显示实验的观察与测量,进一步加深通过实验板验证电路的方法;
D.了解图形输入、文本输入、层次实际的过程; 
E.了解图形输入的注意事项和画图技巧;

2.2设计

2.2.1模4计数器电路图

芯片号:cycloneII ep2c5t144c8

管脚分配:clk:pin_91、q[1]:pin_118、q[0]:pin_115
说明:模4计数器可记录5个脉冲,以实现控制功能。
Quartus II工程设计过程:创建工程文件、电路设计、编译综合、仿真验证、引脚配置、编程下载、硬件验证等。采用74164芯片为设计核心,74164是4位二进制计数器,带同步载入,异步清零。模4计数器采用00 01 10 11 00循环计数。

波形仿真验证:

第一个上升沿为0,第二个上升沿为1,第二个上升沿为2,第三个上升沿为3,第四个上升沿为0,接下来的上升沿都将这样变化。

2.2.2模4计数器下载现象描述
【现象】
下载好对应的文件后,实验板上只有分配好的两个二极管引脚118、115发光。且呈现的发光顺序是两个都不亮-左面不亮右面亮-左面亮右面不亮-两个都亮-两个都不亮。用数字可表示(0,0)(0,1)(1,0)(1,1)(0,0);
【如何验证电路正确并下结论】
若在时序仿真的情况下,将clk时钟信号设置为以100ns的周期信号后,观察结果q的值随时钟信号变化的过程,如果q随着时钟上升沿改变并且改变的过程为01230这样往复循环,则表明结果正确。
在下载验证时,若设置的两个发光二极管是按照正确的发光周期即上述发光顺序则可以说明电路形为正确。

2.2.3比较仿真验证和下载验证
【仿真验证】
仿真验证分为功能验证和时序验证。一般时序仿真相较于功能仿真会有延迟。但是时序仿真更能反映出一个实验的真实状况。而我们做实验时一般采用功能仿真。仿真验证的优点是不需要分配引脚,可以简单地改变输入信号,结果以波形图表示出来,静态显示结果更便于观察、分析。但是,当我们的设计文件比较大时,仿真速度会变得很慢,这让我们的验证速度大打折扣。仿真验证可以观察每个时刻的q,比较方便观察,而下载验证则仅能看到一个时钟的结果,但是在实验板上进行验证更加接近现实结果,可以更明确地看到它随时钟的变化。

【下载验证】
下载验证相比于仿真验证就比较麻烦。需要事先分配好引脚,然后将设计好的电路下载到实验板上从引脚的亮灭情况来判断输出的是高电平(“l”)还是低电平(“0")。操作较为繁琐。优点是可以清晰地看到二极管的变化,且下载验证更具实践性和真实性。缺点是有些现象通过人眼观察可能并不是很明显,仍有漏洞,且验证速度较慢。

2.3实现

2.3.1顶层电路描述
【顶层电路图】

【管脚分配】

如图按照仿真示例进行管脚的分配;

【波形仿真】

如图,din0、din1、din2的值分别设置为1、2、3;
0-150ns:位选信号为00,beg信号选择第1个数码管显示,显示为din0的值1,显示正确;
150ns-250ns:位选信号为01,beg信号选择第2个数码管显示,显示din1的值,显示正确;
250ns-350ns、350ns-450ns:位选信号分别为10、11,beg信号都对应着第3个数码管,显示din3的值,显示正确;

【模块说明】
Counter4:模4计数器,接受时钟信号进行计数。模4计数器将值进行累加并输出给2-3译码器和三选一选择器。通过画图的方式实现。
Decoder2-3:2-3译码器控制位选信号的输出,接受模4计数器传来的信号,输出数码管的位选信号,通过画图的方式实现,电路图如下:


MUX4-3-1: 三路选择器可以同时输入三路数据与模4计数器传来的信号。通过控制3路4位数据的选择输出,通过编写vhdl语言的方式实现,代码如下:

2.3.2下载实作(proteus实现)
输入0-f时,7449译码符号显示情况:

可以看出,7449能够正常显示0-9(但是个人感觉6的显示不太正确),但不能显示a-f,并且,其显示的情况与波形仿真情况相同,波形仿真图:

段选信号分别对应(与实作仿真结果完全相同):
a:0001101、b:0011001、c:0100011、d:1001011、e:0001111、e:0000000

2.3.3顶层优化

思路:如实作截图所示,7449译码器不能编码10-15即a-f。可以通过VHDL对其进行修正(因为使用的7449符号是read-only的,不能直接改变这个器件),设计一个VHDL实现的模块将输入a~f的输出信号修改成特定的信号。将手动输入4位构成的编码,输出对应的7位段选信号。
即当输入10~15时,使译码器输出的信号在数码管上呈现’A’、’b’、’C’、’d’、’E’、’F’这6个字母。

修正模块的代码:

更改后7449部分电路图(剩余部分均不变,只是在7449输出后加一个修正模块):

时序波形验证:

说明:
前面09不变,观察1015的变化;
从1.1us至1.7us分别输出a-f的译码情况,可以看出:
A输出1110111、b输出0011111、C输出100110、d输出0111101、E输出1001111、F输出1000111;在数码管上的显示刚好是’A’、’b’、’C’、’d’、’E’、’F’这几个字符,验证正确。

3. 总结

【知识技能】
从3位数码管这个实验,我学到了很多,收获了很多经验。首先是学到了新的验证方法,也就是下载验证,了解到了下载验证与时序仿真的区别;在第一周的学习中初步了解了实验板的使用方法以及工作原理,接着通过数码管这个实验进一步加深了对实验板运用的方法,同时了解了数码管的工作原理。
【人文】
另外,虽然在疫情期间无法返回学校,只能在家学习,但老师们提供的学习平台和scrom学习方法带来了其他学科所无法比拟的便利,有一些不懂之处也在与其他同学的交流中得到了详细的解答,这种线上学习的方式让我更加懂得沟通、交流,相互学习、取长补短的重要性在这次实验中体现的淋漓尽致。
【记忆方法】
而在记忆方法上,我觉得可以通过绘制流程图、或者思维导图的方式将实验的一些要点记录下来,以便于在实验中有一个清晰的脉络。当然,实验最重要的还是实践,只有自己去动手尝试,才能真正的学到知识。

数字系统实验—第13周任务(3位数码管动态扫描显示实验含工程与优化)相关推荐

  1. 【 FPGA 】控制数码管动态扫描显示的小实验

    实验的功能很简单,就是让4个数码管每隔1s递增显示,使用动态扫描的方式来实现. 从这个功能的描述可以看出,我们首先要写一个计数器模块,来让计数值每隔1s增加1,暂时实现的是16进制的东西,从0到f,之 ...

  2. 四位共阳极数码管显示函数_【项目8-任务10-小组13】利用四位数码管实现动态扫描显示...

    学习任务 1.四位数码管的电路结构与显示原理 (什么是位选.什么是段选.共阴与共阳的区别.显示4位数字,需要多少条口线?显示n位数字呢?) 2.Arduino直接连接四位数码管实现四位阿拉伯数字显示 ...

  3. 实验三 基于FPGA的数码管动态扫描电路设计 quartus/数码管/电路模块设计

    实验三 基于FPGA的数码管动态扫描电路设计 源文件的链接放在最后啦 实验目的: (1) 熟悉7段数码管显示译码电路的设计. (2) 掌握数码管显示原理及静态.动态扫描电路的设计. 实验任务: (1) ...

  4. 实验六 键盘扫描显示实验(矩阵键盘)

    实验六 键盘扫描显示实验(矩阵键盘) 一.实验要求 在上一个实验的基础上,利用实验仪提供的键盘扫描电路和显示电路,做一个扫描键盘和数码显示实验,把按键输入的键码在八位数码管上显示出来. 实验程序可分成 ...

  5. stm32数码管显示数字 流程图_怎样用keil编写4位数码管显示1234的程序

    显示1234程序 #include"reg52.h" #define uint unsigned int #define uchar unsigned char uint i,j; ...

  6. 三位数码管实验报告-数字系统实验

    这里写自定义目录标题 数字系统实验-三位数码管实验报告## 1. 日志(2020.03.26日完成) 2. 报告 3.实验总结 数字系统实验-三位数码管实验报告## 1. 日志(2020.03.26日 ...

  7. 【正点原子FPGA连载】第四十一章OV5640摄像头RGB-LCD显示实验 -摘自【正点原子】新起点之FPGA开发指南_V2.1

    1)实验平台:正点原子新起点V2开发板 2)平台购买地址:https://detail.tmall.com/item.htm?id=609758951113 2)全套实验源码+手册+视频下载地址:ht ...

  8. 音频电平vu显示表软件下载_正点原子开拓者 Nios II资料连载第十章MCU TFT-LCD图片显示实验...

    1)实验平台:正点原子开拓者FPGA 开发板 2)摘自<开拓者 Nios II开发指南>关注官方微信号公众号,获取更多资料:正点原子 3)全套实验源码+手册+视频下载地址:http://w ...

  9. 基于FPGA的两位按键控制LED数码管加减计数实验

    两位按键控制LED数码管加减计数实验 这是一篇拖了一个多月的文章,主要是基于FPGA利用按键消抖原理与动态数码管驱动原理相结合,来实现一个利用两位按键来控制数码管实现0-99的加法计数或者减法计数功能 ...

最新文章

  1. POJ1088(滑雪)
  2. 1040 Longest Symmetric String 需再做
  3. 为什么使用缩进来分组语句?15个为什么,帮助你更好的理解Python!
  4. 基于 Prometheus、InfluxDB 与 Grafana 打造监控平台
  5. [转] Oracle中Blob转Clob
  6. Oracle通过主键id删除记录很慢
  7. deque冰淇淋_用冰淇淋解释组合爆炸:如何添加一点并获得很多
  8. 使用Ant制作发布版本
  9. 咖啡品牌“三顿半”完成千万级Pre-A轮融资,峰瑞资本投资...
  10. wps表格在拟合曲线找点_excel拟合曲线函数表达式,excel散点拟合出来的公式看不懂。请问怎么写入表格使用?...
  11. 西门子PLC开发笔记(一):PLC介绍,西门子S1200系列接线、编程、下载和仿真
  12. C/S模型与P2P模型
  13. C++弹窗拦截程序,弹窗广告怎么关闭?不用问,我教你怎么屏蔽!
  14. 前端,网页设计常用色彩搭配表
  15. android自定义rx库,Android下载库(OkHttp3+Retrofit2+RxJava2)
  16. 联想服务器SR650升级网卡固件微码
  17. bilibili源码泄漏后,程序员们从代码里扒出来的彩蛋
  18. 初识iPhone基带通讯
  19. 对比分析OSG与Cesium中模型LOD的异同
  20. 金山办公:订阅为王?

热门文章

  1. Idea使用SpringLoaded实现热部署
  2. Python中列表常用的操作符
  3. iostat的监控log生成折线图的方法
  4. 甘肃省酒泉市谷歌卫星地图下载(百度网盘离线包下载)
  5. CES Asia:电子烟成为行业新热点
  6. 一个口袋中有12个球,3个红色,3个白色,6个黑色 任取8个球,共有多少种颜色搭配?
  7. setfill()与setw()
  8. 腾讯Web前端大会即将在深圳召开 带来最具腾讯前端特色的经验分享
  9. 因为不懂Maven,被开了!
  10. oracle课程设计的总结,谈Oracle课程设计基本框架