数码管扫描显示控制器设计与实现.doc

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实验四 数码管扫描显示控制器设计与实现 一、 实验目的 1、 进一步了解时序电路设计方法 2、 掌握多个数码管动态扫描显示的原理及设计方法 二、 实验仪器 1、计算机 2、直流稳压电源 3、数字系统与逻辑设计实验开发板 三、 实验原理 多个数码管动态扫描显示,是将所有数码管的相同段并联在一起,通过选通信号分时控制各个数码管的公共端,循环一次点亮多个数码管,利用人眼睛的视觉暂留现象,只要扫描频率大于50Hz,将看不到闪烁。 当闪烁显示的发光二极管闪烁频率较高时,我们将观察到持续点亮的现象。同理,当多个现实数码管一次显示,但切换速度足够快时,我们将观察到所有数码管都是同时显示。一个数码管要稳定显示要求显示频率50Hz,那么6个数码管则需要50×6=300Hz以上才能看到持续稳定点亮的现象。 对于第一个实验,可以用一个时钟信号同时控制着两个输出,一个是选择的数码管(管脚0-5,一个是选择的显示数字(管脚0-6,在时钟的作用下这两个变量在移动,只要令时钟变化的足够快就可以实现六个数码管同时显示的状态. 对于第二个和第三个实验,利用同样的思路,只不过这个时候需要利用分频器再造出一时钟信号来控制整个系统. 四、 实验内容 1、 用VHDL语言设计并实现六个数码管串行扫描电路,要求同时显示0、1、2、3、4、5这6个不同的数字图形到6个数码管上,仿真并下载验证其功能。 VHDL程序截图 设计思路:cat1-6对应于6个共阴极数码管的公共端,当catn=‘0’时,其对应的数码管被点亮。通过控制cat1~6,在时钟信号的第一个周期开启第一个数码管,第二个周期开启第二个,以此类推,6个数码管依次点亮,由于扫描频率很高,我们会看到连续亮的数码管,1-6号管分别显示012345. 仿真波形 波形分析: clear为高电平时,六个数码管串行扫描。num[n]分别对应着数码管的7段,数码管高电平为亮,低电平暗。Catn为低电平时,数字n即通过num[n]显示。比如,数字5,cat“111110” num=“1011011”.只要数码管闪烁频率足够高,就可以看到六个数码管分别显示0-5六个不同的数字. clear为低电平时,有效,波形清零。 2、 用VHDL语言设计并实现六个数码器滚动显示电路。 (1) 循环左滚动,始终点亮6个数码管,左出右进。状态为:012345——123450——234501——345012——450123——501234——012345 VHDL代码 仿真波形: 波形输出分析: 因为要实现的是循环左滚动,且状态转移的顺序是012345-123450-234501-345012-450123-501234-012345共六个状态.从图中可以清楚地看出这六个状态转移过程中,发光二极管管脚的变化情况. 输入时钟信号后,6个数码管的选通控制端在同一时刻始终保持一个低电平其余高电平,在0-5对应的数码管上输出实验设定的数字,并且由地位向高位依次循环移动. (2)向左滚动,用全灭的数码管填充右边,直至全部变灭,然后再依次从右边一个一个的点亮。状态为:012345——12345X——2345XX——345XXX——45XXXX——5XXXXX——XXXXXX——XXXXX0——XXXX01——XXX012——XX0123——X01234——012345,其中X表示数码管不显示。 VHDL程序: 仿真波形: 波形分析: 由波形图可以清楚地看到12个状态的波形,当时钟clk变化一些周期之后,波形就转到下一个状态.如图所示.状态转移关系: 012345-12345X-2345XX-345XXX-45XXXX-5XXXXXX-XXXXXX-XXXXX0 -XXXX01-XXX012-XX0123-X01234-012345 五、 故障及问题分析: 1. 在实验中,特别是实验2和实验3是需要两个时钟的,但是下载板上只有一个时钟信号,所以就要用分频器将这个时钟分成两个来进行使用. 2. 起初下载到实验板上的数字都是反的,这是由于”downto”的使用导致连接到板子上应该是相反的序号. 六 总结和结论: 1. 实验前在编写VHDL语言的时候要特别的注意考虑实验室实验板的状况,以保证自己的 程序能够下载到实验板上进行使用.并且在设计VHDL语言的程序的时候要多看书上的例子,用最简洁的方式实现目的. 2. 实验时要特别的认真,从波形图设计截止时间,时钟周期以及输出的表示,到管脚的设定,看准再做. 3. 实验之后要及时总结实验中的问题和解决方法.

文档评论(0)

123****6651 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档