程序;校时:当tur
1时,调整分位smi
1、smi
0;当tur
0时,调整小时位shour1、shour0;闹铃:当tur
1时,调整分位ami
1、ami
0;当tur
0时,调整小时位ahour1、ahour0;秒表:当pause0时,开始计时;当pause1时,暂停。
四、实验代码
时钟模块moduleclockclk
clrpausetur
modesecmi
1mi
0hour1hour0alertLD_alerti
putclki
putclri
putpausei
puttur
时钟信号50MHz清零键秒表暂停键调整分还是小时位的控制
fi
putoutputoutputoutputoutputoutputoutputoutput
10modesec30mi
130mi
030hour130hour0alertLD_alert
决定时钟显示功能状态接发光二极管用于输出接数码管4用于输出接数码管3用于输出接数码管2用于输出接数码管1接发光二极管,代替蜂鸣器当闹铃设定后,发光二极管显示
wirewirewirewirewire
secLD_alert
clk1clk2clr1
秒位显示用于闹铃存在时的提醒显示
时钟1s时钟100ms,用于秒表最小计时单位
reg
30mi
1
reg
30mi
0
reg
30hour1
reg
30hour0
常规显示常规显示常规显示常规显示
reg
30smi
1
校时
reg
30smi
0
校时
reg
30shour1
校时
reg
30shour0
校时
reg
30ami
1
闹铃
reg
30ami
0
闹铃
reg
30ahour1
闹铃
reg
30ahour0
闹铃
reg
30mmi
1
秒表
reg
30mmi
0
秒表
reg
30mhour1
秒表
reg
30mhour0
秒表
reg
alert
reg
70cou
t
当闹铃到时高电平输出
reg
240cou
ter
reg
e
able
reg
e
1e
2
wireseco
d_e
falwaysposedgeclkge
erate1s
begi
ifclr
begi
cou
ter0
e
able0
e
d
else
begi
cou
tercou
ter1
ifcou
ter25d249仿真时可将闸门信号设为000001s,加快仿真速度
ifcou
ter25d2执行设计时将闸门信号改回为1s
begi
e
ablee
able
cou
ter25d0
e
d
e
d
e
d
alwaysposedgeclkbegi
ifclrbegi
e
11b0e
21b0
e
delsebegi
e
1e
ablee
2e
1
e
de
dassig
seco
d_e
e
1e
2
alwaysposedgeclkbegi
ifclrbegi
ami
10ami
00ahour10ahour00smi
10smi
00
fshour10
shour00
mmi
10
mmi
00
mhour10
mhour00
cou
t0
e
d
elseifseco
d_e
begi
cou
tcou
t1
ifmode2b01
闹铃调时状态
iftur
1
当tur
为高电平时调整分位
ifami
15ami
09
begi
ami
10
ami
00
e
d
else
ifami
09
begi
ami
1ami
11
ami
00
e
d
else
ami
0ami
01
else
当tur
为低电平时调整小时位
ifahour12ahour03
begi
ahour10
ahour00
e
d
else
ifahour09
begi
ahour1ahour11
ahour00
r