曾健 蘇巖淇 李永康 趙穎 王穎
摘要:為了實(shí)現(xiàn)模擬簡易電子鐘的功能,以FPGA,Verilog語言為基礎(chǔ),具體包含時(shí)鐘主控模塊,分頻模塊,七段譯碼器顯示模塊實(shí)現(xiàn)了對(duì)電子鐘的設(shè)計(jì),驗(yàn)證效果良好。
關(guān)鍵詞:簡易電子鐘;Verilog;FPGA
中圖分類號(hào):TP311 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2019)06-0250-02
電子鐘已經(jīng)成為人們?nèi)粘I钪斜夭豢缮俚谋匦杵?,廣泛用于個(gè)人家庭、辦公室、劇場等公共場所,鐘表的數(shù)字化給人們的生活、學(xué)習(xí)、工作、娛樂帶來極大的方便。電子鐘比老式鐘表能更精確,而且大大地?cái)U(kuò)展了鐘表原先的報(bào)時(shí)功能。諸如,定時(shí)自動(dòng)報(bào)警、按時(shí)自動(dòng)打鈴、定時(shí)廣播等,所有這些,都是以鐘表數(shù)字化為基礎(chǔ)的。因此,研究電子鐘有著非?,F(xiàn)實(shí)的意義。
1 原理
Verilog是當(dāng)下廣泛使用的硬件的描述語言,可以運(yùn)用在硬件設(shè)計(jì)流程當(dāng)中的綜合,建模和模擬等多個(gè)階段。
1.1 計(jì)時(shí)模塊
模塊的功能為每秒鐘讀一個(gè)數(shù),秒表一次加1滿60進(jìn)1加到分鐘,分鐘計(jì)時(shí)滿60進(jìn)1加入小時(shí),小時(shí)滿12置一。功能上是兩個(gè)模60計(jì)數(shù)器和一個(gè)模12計(jì)數(shù)器。
1.2 譯碼顯示模塊
譯碼器的框圖和真值表如下,3個(gè)輸入端出現(xiàn)8種組合可能:000——111,就可以控制8個(gè)的輸出y[7:0]其中的1位輸出為“0”。
1.3七段譯碼器
七段譯碼器框圖和真值表如下,4個(gè)輸入口16種組合可能,7個(gè)輸出口y[6:0]分別控制數(shù)碼管的亮或者滅,從而體現(xiàn)出對(duì)應(yīng)的16個(gè)數(shù)字。
2 總體設(shè)計(jì)
經(jīng)過分頻模塊將調(diào)整好的信號(hào)(50M~10HZ)送入時(shí)鐘主模塊,主模塊包含設(shè)置時(shí)間、復(fù)位等功能,主模塊運(yùn)行實(shí)現(xiàn)電子鐘的功能,最后由顯示模塊進(jìn)行數(shù)碼管顯示時(shí)間完成表達(dá)電子鐘現(xiàn)象的功能。
3 詳細(xì)設(shè)計(jì)
3.1功能要求
1)小時(shí)計(jì)數(shù)器為“12翻1”,分計(jì)數(shù)器為8421BCD碼60進(jìn)制計(jì)數(shù)器。
2)在Quartus Ⅱ軟件平臺(tái)上建立計(jì)數(shù)器電路的頂層電路文件并完成編譯和仿真。
3.2信號(hào)說明
輸入變量:時(shí)鐘CLK,直接清零RESET。
輸出變量:小時(shí)計(jì)時(shí)信號(hào)為q[15…8],其中,q[15…12]為小時(shí)的十位,q[11…8]為小時(shí)的個(gè)位;q[7…0]為分計(jì)時(shí)信號(hào),其中,q[7…4]為分的十位,q[3…0]為分的個(gè)位,上述計(jì)時(shí)信號(hào)的輸出均采用8421BCD碼。
3.3功能原理
3.4框圖頂層文件
4 仿真
時(shí)鐘主模塊程序經(jīng)軟件仿真輸出的波形如下圖所示
從仿真圖中看出當(dāng)時(shí)鐘的十位和個(gè)位以及分鐘的十位和個(gè)位分別顯示1,2,5,9時(shí),下一個(gè)CLK時(shí)鐘信號(hào)直接會(huì)使顯示變?yōu)?,1,0,0。從而完成了分鐘60進(jìn)一,小時(shí)12翻一的功能,現(xiàn)象明顯,效果良好。
5 驗(yàn)證
數(shù)碼管顯示分鐘60進(jìn)一,時(shí)針12翻一,輸入時(shí)鐘信號(hào),數(shù)碼管顯示12進(jìn)制的電子鐘現(xiàn)象,經(jīng)過驗(yàn)證,功能完整,運(yùn)行效果良好。
參考文獻(xiàn):
[1] 張振榮,晉明武.MCS-51單片機(jī)原理及實(shí)用技術(shù)[M].北京:人民郵電出版社,2000.
[2] 褚振勇,翁木云.FPGA設(shè)計(jì)及應(yīng)用[M].西安:西安電子科技大學(xué)出版社,2002.
【通聯(lián)編輯:唐一東】