VHDl 语言实现动态数码管扫描.docx

上传人:b****4 文档编号:5614060 上传时间:2023-05-08 格式:DOCX 页数:13 大小:170.64KB
下载 相关 举报
VHDl 语言实现动态数码管扫描.docx_第1页
第1页 / 共13页
VHDl 语言实现动态数码管扫描.docx_第2页
第2页 / 共13页
VHDl 语言实现动态数码管扫描.docx_第3页
第3页 / 共13页
VHDl 语言实现动态数码管扫描.docx_第4页
第4页 / 共13页
VHDl 语言实现动态数码管扫描.docx_第5页
第5页 / 共13页
VHDl 语言实现动态数码管扫描.docx_第6页
第6页 / 共13页
VHDl 语言实现动态数码管扫描.docx_第7页
第7页 / 共13页
VHDl 语言实现动态数码管扫描.docx_第8页
第8页 / 共13页
VHDl 语言实现动态数码管扫描.docx_第9页
第9页 / 共13页
VHDl 语言实现动态数码管扫描.docx_第10页
第10页 / 共13页
VHDl 语言实现动态数码管扫描.docx_第11页
第11页 / 共13页
VHDl 语言实现动态数码管扫描.docx_第12页
第12页 / 共13页
VHDl 语言实现动态数码管扫描.docx_第13页
第13页 / 共13页
亲,该文档总共13页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

VHDl 语言实现动态数码管扫描.docx

《VHDl 语言实现动态数码管扫描.docx》由会员分享,可在线阅读,更多相关《VHDl 语言实现动态数码管扫描.docx(13页珍藏版)》请在冰点文库上搜索。

VHDl 语言实现动态数码管扫描.docx

VHDl语言实现动态数码管扫描

电子综合技术

实验报告

 

实验名称:

3位十进制循环计数器的设计

系(科):

信息系电子信息工程

班级:

180932

学号:

18093238

姓名:

夏良飞

完成时间:

2012-4-20

 

南京师范大学中北学院

3位十进制循环计数器的设计

一、实验内容

1.设计一个3位十进制循环计数器,从0加到999,再恢复到0,循环往复。

每秒计数器加1。

2.有复位功能,当复位端reset为高时,计数器清零,停止计数。

3.以控制计数的开始start和停止stop。

当计数开始start信号有效时,计数器开始计数;当计数停止stop信号有效时,计数停止;当start信号再次有效时,继续计数。

4.计数器的计数值采用动态显示方式在数码管上显示出来。

5.进行设计,仿真并下载程序到实验箱的CPLD模块板进行验证。

二、实验原理

1.按键去抖动模块设计原理

(1)、抖动原因

通常使用的按键都是机械弹性开关,按下时闭合,松开后自动断开。

在键盘操作时,在触点闭合和开启的瞬间会出现电压抖动,如图所示。

为了保证按键识别的准确性,必须进行去抖动处理,消除抖动部分的信号。

(2)设计原理

滤除前沿和后延抖动毛刺,提取稳定的按键信息

2.按键扫描模块设计原理

CPLD检测按键端的电平,当按键按下时按键端的电平为低电平,相应触发相关的操作。

反之,则不进行相应的操作。

3.三位循环计数器的设计原理

当时钟的上升沿到来之时,计数器的计数值就加一,直到加到计数值为999然后计数器的计数值重新置零。

4.动态显示计数器的设计原理

当时钟的上升沿到来之时,计数器的计数值就加一,直到加到计数值为2然后计数器的计数值重新置零。

5.分为电路的设计原理

将计数器计数所得到的值分别进行相应的取余和取整操作得到最后分位结果。

如下所示:

得到543的分位操作。

X=543mod10=3;

temp=543/10,

Y=tempmod10=4;

Z=543/100=5

X、Y、Z分别就是个位、十位和百位。

6.动态显示译码模块的设计原理

(1)、首先向LED数码管显示段码数据口发送第一个8位数据,同时发送位码数据,此时相应位码为低电平,其他为高电平;

(2)、延时一段时间,发送第二个数据,此时相应位码为低电平,其他为高电平;

(3)、依此类推,对各个显示器进行扫描,显示器分时工作,实际上每次只有一个显示器显示,但是由于视觉暂留现象,感觉显示器是同时显示的。

7.分频器的设计原理

分频器就是对较高频率的信号进行分频,得到较低频率的信号。

常见的分频器有二进制分频器、偶数分频器、奇数分频器、占空比可调的分频器和小数分频器。

分频系数(倍率)rate=fin/fout。

三、设计方案

1.电路的框架图

2.电路模块

四、原理图和VHDL程序

1.顶层原理图

2.按键去抖的VHDL语言描述

3.按键扫描的VHDL语言描述

4.3位循环计数器的VHDL语言描述

5.分位电路的VHDL语言描述

6.动态显示计数的VHDL语言描述

7.动态显示译码模块的VHDL语言的描述

8.4个分频器设计的VHDL语言描述

(1)、200Hz的分频

(2)、10Hz的分频

(3)、1Hz的分频

(4)、1kHz的分频

 

五、实物仿真结果

在实验箱上直接看结果的正确与否,由实际现象看出电路设计的结果正确。

实验箱的引脚配置如下:

六、结论

在这次EDA实验设计中,我完成的是一个3位十进制循环计数器的设计,在计数器的设计中,多次用到了计数器这一基本数字电路元件(包括分频器的设计都用到了计数器),于是我对计数器做更深入的研究。

在这次EDA实验设计中还有二个重要的模块分别是按键去抖(包括按键扫描)模块和LED显示译码模块,

在这二个模块中让我清楚地认识到机械按键用在数字电路中的不足之处和对此的补救措施;也让我深刻的认识到了LED动态显示的机制。

这里所设计的3位十进制循环计数器是在QuartusII开发环境下进行设计的,设计完之后,下载到了EPM570T100C5芯片进行了硬件验证。

实验证明设计基本正确,功能基本完善。

唯一的不足之处在于计数器的运行不够稳定,与预期结果相比,计数时间过快。

遗憾的是到目前为止,还未能找到问题所在。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 农林牧渔 > 林学

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2