clockLCD1602Word格式.docx
《clockLCD1602Word格式.docx》由会员分享,可在线阅读,更多相关《clockLCD1602Word格式.docx(121页珍藏版)》请在冰豆网上搜索。
STD_LOGIC;
SIGNALbeep5:
SIGNALcnt_beep4:
integerrange0to4;
SIGNALbeep4,beep2:
SIGNALcnt10Hz:
integerrange0to19;
SIGNALclk_10Hz:
SIGNALclk_5Hz:
SIGNALreset_delay:
SIGNALreset_cnt:
integerrange0to5;
begin
process(clk,reset)
begin
if(clk'
eventandclk='
1'
)then
if(en_5ms='
if(cnt10Hz<
19)then
cnt10Hz<
=cnt10Hz+1;
else
=0;
clk_5Hz<
=notclk_5Hz;
endif;
10)then
clk_10Hz<
='
;
0'
endif;
endif;
endprocess;
process(clk_10Hz,reset)
if(reset='
reset_cnt<
reset_delay<
elsif(clk_10Hz'
eventandclk_10Hz='
if(reset_cnt<
5)then
reset_cnt<
=reset_cnt+1;
reset_delay<
else
=reset_cnt;
process(clk_5Hz,reset,cnt_alarmin,alarmin,cnt_beep4)
or(cnt_alarmin='
andalarmin='
))then
cnt_beep4<
beep4<
elsif(clk_5Hz'
eventandclk_5Hz='
if(cnt_beep4<
4)then
cnt_beep4<
=cnt_beep4+1;
casecnt_beep4is
when1=>
beep4<
beep2<
when2=>
when3=>
when4=>
whenothers=>
endcase;
process(timein)
casetimeinis
whenX"
59_59"
|X"
59_56"
59_57"
59_58"
=>
freq<
beep5<
='
--500Hz
00_00"
=>
--1kHz
whenothers=>
--不响
--计数器闹铃优先级最高,时间闹铃优先级次之,整点报时闹铃优先级最低。
--当计数器时间到闹铃时,时间闹铃和整点报时闹铃被屏蔽,
--当时间闹铃正在进行时,整点报时闹铃被屏蔽。
alarm_out<
=(
(notreset)andtone_H--全局清零的时候响
)
or
(
reset_delay
and
(
((notcnt_alarmin)and(notalarmin)andis_need_alarmandbeep5and(clk_1Hz)and(((notfreq)andtone_L)or(freqandtone_H)))--整点报时
or
((notcnt_alarmin)andalarminandtone_Landclk_10Hzandbeep4)--普通闹铃
or
(cnt_alarminandtone_Landbeep2)--计数器闹铃
)
);
endARCHITECTURE;
libraryIEEE;
useIEEE.STD_LOGIC_1164.all;
packageascii_tableis
constantsp:
std_logic_vector(7downto0):
=x"
20"
--空格
constantgantanhao:
21"
--感叹号!
constantshuangyinhao:
22"
--双引号"
constantjinghao:
23"
--井号#
constantdollar:
24"
--美元符号$
constantbaifenhao:
25"
--百分号%
constantdizhi:
26"
--地址符号&
constantyoudanyinhao:
27"
--右单引号‘
constantzuokuohao:
28"
--左括号(
constantyoukuohao:
29"
--右括号)
constantchenghao:
2a"
--乘号*
constantjiahao:
2b"
--加号+
constantdouhao:
2c"
--逗号,
constantjianhao:
2d"
--减号-
constantxiaoshudian:
2e"
--小数点.
constantfanxiegang:
2f"
--反斜杠/
constantn0:
30"
--数字0
constantn1:
31"
--数字1
constantn2:
32"
--数字2
constantn3:
33"
--数字3
constantn4:
34"
--数字4
constantn5:
35"
--数字5
constantn6:
36"
--数字6
constantn7:
37"
--数字7
constantn8:
38"
--数字8
constantn9:
39"
--数字9
constantmaohao:
3a"
--冒号:
constantfenhao:
3b"
--分号;
constantxiaoyuhao:
3c"
--小于号<
constantdenghao:
3d"
--等号=
constantdayuhao:
3e"
--大于号>
constantwenhao:
3f"
--问号?
constanthuaa:
40"
--花a@
constantuA:
41"
--大写A
constantuB:
42"
--大写B
constantuC:
43"
--大写C
constantuD:
44"
--大写D
constantuE:
45"
--大写E
constantuF:
46"
--大写F
constantuG:
47"
--大写G
constantuH:
48"
--大写H
constantuI:
49"
--大写I
constantuJ:
4a"
--大写J
constantuK:
4b"
--大写K
constantuL:
4c"
--大写L
constantuM:
4d"
--大写M
constantuN:
4e"
--大写N
constantuO:
4f"
--大写O
constantuP:
50"
--大写P
constantuQ:
51"
--大写Q
constantuR:
52"
--大写R
constantuSS:
53"
--大写S
constantuT:
54"
--大写T
constantuU:
55"
--大写U
constantuV:
56"
--大写V
constantuW:
57"
--大写W
constantuX:
58"
--大写X
constantuY:
59"
--大写Y
constantuZ:
5a"
--大写Z
constantzuozhongkuohao:
5b"
--左中括号[
constantrenminbi:
5c"
--人民币¥
constantyouzhongkuohao:
5d"
--右中括号]
constantshangjianhao:
5e"
--上尖号^
constantxiahuaxian:
5f"
--下划线_
constantzuodanyinhao:
60"
--左单引号’
constantaa:
61"
--小写a
constantb:
62"
--小写b
constantc:
63"
--小写c
constantd:
64"
--小写d
constante:
65"
--小写e
constantf:
66"
--小写f
constantg:
67"
--小写g
constanth:
68"
--小写h
constanti:
69"
--小写i
constantj:
6a"
--小写j
constantk:
6b"
--小写k
constantl:
6c"
--小写l
constantm:
6d"
--小写m
constantn:
6e"
--小写n
constanto:
6f"
--小写o
constantp:
70"
--小写p
constantq:
71"
--小写q
constantr:
72"
--小写r
constants:
73"
--小写s
constantt:
74"
--小写t
constantu:
75"
--小写u
constantv:
76"
--小写v
constantw:
77"
--小写w
constantx:
78"
--小写x
constanty:
79"
--小写y
constantz:
7a"
--小写z
constantzuodakuo