基于VHDL的电子秒表Word文档下载推荐.docx
- 文档编号:7558028
- 上传时间:2023-05-08
- 格式:DOCX
- 页数:15
- 大小:147.92KB
基于VHDL的电子秒表Word文档下载推荐.docx
《基于VHDL的电子秒表Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《基于VHDL的电子秒表Word文档下载推荐.docx(15页珍藏版)》请在冰点文库上搜索。
图3.1电子秒表总模块
3.2电子秒表单元电路设计
3.2.1分模块及仿真波形图
分模块如图3.2所示
图3.2分模块
Fengrst:
清零端口;
miaojin:
进位端口;
fengshi【3.0】:
十位输出端口;
fengge【3.0】:
个位输出端口。
波形图如图3.3所示
图3.3波形图
fengrst高电平有效,当miaojin脉冲来的时候fenge开始计数当fenge为9时产生一个进位信号fenshi开始计数。
分程序代码:
libraryieee;
useieee.std_logic_1164.all;
useieee.std_logic_unsigned.all;
entityfengis
port(fengrst,miaojin:
instd_logic;
fengshi,fengge:
outstd_logic_vector(3downto0)
);
endfeng;
architecturem1offengis
signalclk:
std_logic;
signalfengshi1:
std_logic_vector(3downto0);
signalfengge1:
std_logic_vector(3downto0);
begin
process(clk,fengrst,miaojin)
iffengrst='
0'
thenclk<
=miaojin;
1'
thenfengshi1<
="
0000"
;
fengge1<
elsifclk'
eventandclk='
then
=fengge1+'
iffengge1="
1001"
fengshi1<
=fengshi1+'
iffengshi1="
0101"
endif;
endprocess;
fengshi<
=fengshi1;
fengge<
=fengge1;
endm1;
3.2.2秒模块及仿真波形图
秒模块如图3.4所示
Miaorst:
haomiaojin:
毫秒进位端口.;
miaojin:
秒进位端口;
miaoshi【3.0】:
秒十位输出端口;
秒个位输出端口。
图3.4秒模块
波形图如图3.5所示
miaorst高电平有效,当haomiaojin脉冲来的时候,miaoge开始计数当miaoge为9时产生一个进位信号,miaoshishi开始计数。
图3.5波形图
秒程序代码:
entitymiaois
port(miaorst,haomiaojin:
miaojin:
outstd_logic;
miaoshi,miaoge:
endmiao;
architecturem1ofmiaois
signalmiaoshi1:
signalmiaoge1:
process(clk,miaorst,haomiaojin)
ifmiaorst='
=haomiaojin;
thenmiaoshi1<
miaoge1<
=miaoge1+'
ifmiaoge1="
miaoshi1<
=miaoshi1+'
ifmiaoshi1="
miaojin<
='
elsemiaojin<
miaoshi<
=miaoshi1;
miaoge<
=miaoge1;
3.2.3毫秒模块及仿真波形图
毫秒模块如图3.5所示
Hanmiaorst:
clk:
时钟频率端口;
stop:
起停端;
haomiaoshi【3.0】毫秒十位输出端口;
haomiaoge【3.0】:
毫秒个位输出端口。
图3.6毫秒模块
波形图如图3.7所示
图3.7波形图
haomiaorst高电平有效,当haomiaojin脉冲来的时候,haomiaoge开始计数当haomiaoge为9时产生一个进位信号,fenshi开始计数。
毫秒程序代码:
entityhaomiaois
port(haomiaorst,clk100,stop:
haomiaojin:
haomiaoshi,haomiaoge:
endhaomiao;
architecturem1ofhaomiaois
process(clk,haomiaorst,clk100)
ifhaomiaorst='
=clk100;
ifhaomiaorst='
andstop='
miaoshi1<
miaoge1<
thenmiaoshi1<
haomiaojin<
elsehaomiaojin<
haomiaoshi<
haomiaoge<
3.2.4消抖模块设计
绝大多数按键都是机械式开关结构,由于机械式开关的核心部件为弹性金属簧片,因而在开关切换的瞬间会在接触点出现来回弹跳的现象。
虽然只是进行了一次按键,结果在按键信号稳定的前后出现了多个脉冲,如果将这样的信号直接送给微处理器扫描采集的话,将可能把按键稳定前后出现的脉冲信号当作按键信号,这就出现人为的一次按键但微处理器以为多次按键现象。
为了确保按键识别的准确性,在按键信号抖动的情况下不能进入状态输入,为此就必须对按键进行消抖处理,消除抖动时不稳定、随机的电压信号。
机械式按键的抖动次数、抖动时间、抖动波形都是随机的。
不同类型的按键其最长抖动时间也有差别,抖动时间的长短和按键的机械特性有关,一般为5~10ms,但是,有些按键的抖动时间可达到20ms,甚至更长。
所以,在具体设计中要具体分析,根据实际情况来调整设计。
消抖模块如图3.8所示
Clk:
input:
输入端口;
output:
输出端口。
图3.8消抖模块
消抖程序代码:
entityxiaodouis
port(clk,input:
output:
outstd_logic);
endxiaodou;
architecturem1ofxiaodouis
signalcp:
std_logic;
signalcount:
integerrange0to3;
process(clk)
If(clk'
)then
if(input='
if(count=3)then
count<
=count;
elsecount<
=count+1;
if(count=2)thencp<
elsecp<
=0;
endif;
output<
=cp;
endprocess;
3.2.5分频模块设计
图3.9分频模块
如图3.9所示,haorst:
清零端口,clk:
时钟输入,clk:
时钟输出。
分频程序代码:
entityfenpinis
port(clk:
clkout:
outstd_logic
);
endfenpin;
architecturem1offenpinis
std_logic_vector(9downto0);
std_logic_vector(9downto0);
process(clk)
ifclk'
eventandclk='
ifmiaoge1="
0000001001"
then
miaoshi1<
ifmiaoshi1="
1111101000"
andmiaoge1="
0000000000"
clkout<
elseclkout<
3.3电子秒表总模块
单元电路的程序结果编译和仿真后,进行打包,建立顶层图。
如图3.10所示,顶层图由两个消抖模块、一个分频模块、分模块、秒模块和毫秒模块组成。
图3.10电子秒表顶层图
第四章电子秒表的调试
在仿真波形中,待程序设计输入完毕以后,要进行程序的编译,在对当前个工程进行编译处理前,必须做好必要的设置,对编译加入一些约束,如果波形没有达到预先的效果,则要检查程序错在哪里,并加以改正,再对程序进行仿真,如果波形达到预先的效果,则可以进行下一步,文件下载:
检查程序引脚表(如下表)和模块都正确,仿真也要正确的情况下,参照引脚表格(如下表)在实验箱上连接电路,并进行检查,然后把文件下载到实验箱,如果秒表不能正常运行,则要检查电路是否连接正确,看有什么缺漏。
4.1引脚绑定
当电子秒表程序编辑完成,编译正确的情况下,然后建立顶层图,进行仿真,如果仿真有误,则对程序进行检查并改正,再次进行仿真,如果正确,开始绑定引脚(如表4.1)。
表4.1引脚绑定表
电子秒表电路引脚表
To
Assignmentname
Value
Enabled
clk
Location
PIN_130
Yes
clr
PIN_132
zt
PIN_131
q1[0]
PIN_87
q1[1]
PIN_88
q1[2]
PIN_99
q1[3]
PIN_100
q2[0]
PIN_81
q2[1]
PIN_82
q2[2]
PIN_83
q2[3]
PIN_86
q3[0]
PIN_111
q3[1]
PIN_112
q3[2]
PIN_113
q3[3]
PIN_114
q4[0]
PIN_101
q4[1]
PIN_102
q4[2]
PIN_109
q4[3]
PIN_110
q5[0]
PIN_73
q5[1]
PIN_78
q5[2]
PIN_79
q5[3]
PIN_80
q6[0]
PIN_68
q6[1]
PIN_69
q6[2]
PIN_70
q6[3]
PIN_72
4.2程序下载
把程序下载到实验箱上的过程中会遇到一些细节上的问题,比如:
下载线没有正确连接,会导致程序无法下载;
导线连接错误。
会导致电子秒表不能正确运行或不能运行;
试验箱显示器坏了,可能也是导致不能运行的原因。
这些问题到解决之后,基本上就可以正确下载并正常运行,最终效果如图4.1所示。
图4.1电子秒表效果图
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 VHDL 电子 秒表