名稱:簡(jiǎn)易計(jì)時(shí)鬧鐘(代碼在文末付費(fèi)下載)
軟件:ISE
語(yǔ)言:Verilog
要求:
簡(jiǎn)易計(jì)時(shí)鬧鐘:有四位數(shù)碼管,前兩位計(jì)分鐘,表示00~99分鐘,后面兩位記秒,值為00~59秒。有三個(gè)按鍵,第一個(gè)是分鍵,第二個(gè)是秒鍵,第三個(gè)是啟動(dòng)/暫停鍵。功能:分秒兩鍵同時(shí)按下清零且停止計(jì)時(shí),外于設(shè)置態(tài),按一次分鍵分鐘加1, 99增1變?yōu)?;按一次秒鍵秒增1,59增1變?yōu)?。此狀態(tài)下按啟動(dòng)/暫停鍵開始計(jì)時(shí),設(shè)置值為0000則為正計(jì)時(shí),設(shè)置值為非零值則為倒計(jì)時(shí)。
正計(jì)時(shí)時(shí),按啟動(dòng)/暫停鍵會(huì)暫停計(jì)時(shí),再按啟動(dòng)/暫停鍵則會(huì)繼續(xù)計(jì)時(shí)。倒計(jì)時(shí)時(shí),減到零時(shí)停止減數(shù)且發(fā)出警示蜂鳴聲,直到啟動(dòng)/暫停鍵被按下時(shí)進(jìn)入設(shè)置態(tài)且同時(shí)顯示前設(shè)置值和停止發(fā)出蜂鳴聲。
演示視頻:
設(shè)計(jì)文檔(文檔點(diǎn)擊可下載):
1. 工程文件
2. 程序文件
3. 程序編譯
4. Testbench
5. 仿真圖
整體仿真圖
正計(jì)時(shí)
暫停
暫停后重啟
分秒同時(shí)按下,設(shè)置時(shí)間2分4秒,開始倒計(jì)時(shí)
倒計(jì)時(shí)結(jié)束蜂鳴器buzzer_call拉高
再按下啟動(dòng)鍵,進(jìn)入設(shè)置態(tài)且同時(shí)顯示前設(shè)置值和停止發(fā)出蜂鳴聲
頂層端口
//簡(jiǎn)易計(jì)時(shí)鬧鐘 module?time_count( sys_clk,//系統(tǒng)時(shí)鐘100Hz minute_BTN,//分按鍵 second_BTN,//秒按鍵 begin_BTN,//啟動(dòng)按鍵 SEG_min1,//分鐘十位 SEG_min2,//分鐘個(gè)位 SEG_sec1,//秒鐘十位 SEG_sec2,//秒鐘個(gè)位 buzzer_call//蜂鳴器 ); input?sys_clk;//系統(tǒng)時(shí)鐘100Hz input?minute_BTN;//分按鍵 input?second_BTN;//秒按鍵 input?begin_BTN;//啟動(dòng)按鍵 output?reg?[7:0]?SEG_min1;//分鐘十位 output?reg?[7:0]?SEG_min2;//分鐘個(gè)位 output?reg?[7:0]?SEG_sec1;//秒鐘十位 output?reg?[7:0]?SEG_sec2;//秒鐘個(gè)位 output?buzzer_call;//蜂鳴器
點(diǎn)擊鏈接獲取代碼文件:http://www.hdlcode.com/index.php?m=home&c=View&a=index&aid=161