




已閱讀5頁(yè),還剩10頁(yè)未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
/*= *名 稱: 可調(diào)電子時(shí)鐘程序 *功 能: 電子時(shí)鐘顯示實(shí)驗(yàn) *接 口: *說(shuō) 明: 黑金II代FPGA開(kāi)發(fā)板,一個(gè)主程序,兩個(gè)子程序。 *編者 時(shí)間: Ye.FuYao 2014-04-28 Cycione EP2C8Q208C8*=*/主程序module main(clk,RSTn,KEY,duan_xuan,wei_xuan);/外部接口input clk,RSTn; /時(shí)鐘,復(fù)位輸入input 3:0KEY; /物理按鍵key_in按為0,松開(kāi)為1 output 7:0duan_xuan;/數(shù)碼管段選輸出output 5:0wei_xuan; /數(shù)碼管位選輸出/時(shí)鐘 /初始化時(shí)間reg 7:0hour=8d12;/時(shí)reg 7:0min=8d0; /分reg 7:0sec=8d0; /秒wire 3:0key_val;/按鍵值/調(diào)用子程序 ,獲取按鍵值key_value U1(.clk(clk),.RSTn(RSTn),.Key_in(KEY),.key_val(key_val);/key_val返回的按鍵值/秒定時(shí)器parameter T1S=25d19_999_999;/定時(shí)值reg 24:0Count1; /計(jì)數(shù)值always(posedge clk or negedge RSTn)beginif(!RSTn)Count1=25d0;else if(Count1=T1S)Count1=25d0;elseCount1=Count1+1b1;/脈沖累加end/計(jì)算時(shí)間always(posedge clk or negedge RSTn)beginif(!RSTn)sec=8d0; /秒計(jì)時(shí)器else if(Count1 = T1S) /脈沖數(shù)滿足T1Sbeginif(sec 8d60) /059beginsec = sec+8d1; /秒加1if(sec = 8d60)/第60秒beginsec = 8d0;if(min 8d60) /059beginmin = min+8d1; /分加1if(min = 8d60)/第60分beginmin = 8d0;if(hour 8d24)/023beginhour=hour+8d1; /時(shí)加1if(hour = 8d24)/第24時(shí)hour = 8d0;endendendendendend/調(diào)時(shí)間,這段可以不用,直接初始化賦值else if(key_val=4d4) /key4按下beginif(hour8d23)hour=hour+8d1;/+1 elsehour8d0)hour=hour-8d1;/-1elsehour0)min=min-8d1; /+1elsemin=8d59;endelse if(key_val=4d1) /key1按下beginif(min8d59)min=min+8d1; /-1elsemin=8d0;end/調(diào)時(shí)結(jié)束end/*= *名 稱:調(diào)用六位數(shù)碼管顯示子程序 *功 能: *輸 入:clk, RSTn, sec, min, hour, duan_xuan, wei_xuan *輸 出:duan_xuan, wei_xuan *=*/ display_LED U2(.clk(clk),.RSTn(RSTn),.sec(sec),.min(min),.hour(hour), /input-時(shí)間參數(shù).duan_xuan(duan_xuan),.wei_xuan(wei_xuan) /in_out-段選位選 );endmodule/=/*= *名 稱: 電子時(shí)鐘子程序 *功 能: 六位數(shù)碼管顯示時(shí)鐘 *接 口: *說(shuō) 明: *編者 時(shí)間: Ye.FuYao 2014-04-23 Cycione EP2C8Q208C8*=*/電子時(shí)鐘子程序module display_LED(clk,RSTn,sec,min,hour,duan_xuan,wei_xuan);input clk,RSTn; /時(shí)鐘,復(fù)位輸入/時(shí)分秒input 7:0sec;input 7:0min;input 7:0hour;output 7:0duan_xuan;/數(shù)碼管段選輸出output 5:0wei_xuan; /數(shù)碼管位選輸出reg 7:0duan_xuan;reg 5:0wei_xuan;/段選碼表 reg 7:0 SMG9:0; /10個(gè)8位的數(shù)組initial begin SMG0=8hc0; SMG1=8hf9; SMG2=8ha4; SMG3=8hb0; SMG4=8h99; SMG5=8h92; SMG6=8h82; SMG7=8hf8; SMG8=8h80; SMG9=8h90;end/位選碼表reg 5:0 wei5:0; /6個(gè)6位的數(shù)組initial begin wei0=6b111_110; wei1=6b111_101; wei2=6b111_011; wei3=6b110_111; wei4=6b101_111; wei5=6b011_111;end/=/分離數(shù)據(jù)reg 3:0rsec_One; /09reg 3:0rsec_Ten; /09reg 3:0rmin_One;reg 3:0rmin_Ten;reg 3:0rhour_One;reg 3:0rhour_Ten;always (posedge clk or negedge RSTn)beginif(!RSTn)begin rsec_Ten=4d0; rsec_One=4d0;endelsebeginrsec_Ten=sec /10; /取十位 rsec_One=sec %10; /取個(gè)位rmin_Ten=min /10; /取十位 rmin_One=min %10; /取個(gè)位rhour_Ten=hour /10; /取十位 rhour_One=hour %10; /取個(gè)位endend/=顯示/掃描定時(shí)器parameter T4MS = 17d59_999; /4ms/20M*0.004=80000reg 16:0Count2;always (posedge clk or negedge RSTn)begin if(!RSTn) Count2 = 17d0; else if(Count2 = T4MS) Count2 = 17d0; else Count2 = Count2 + 17d1;end/標(biāo)志位reg 3:0t=0; /07reg 31:0rData=0; /暫存數(shù)據(jù)/送數(shù)據(jù)always (posedge clk or negedge RSTn)beginif(!RSTn)/復(fù)位begint = 4d0;rData=32d0;duan_xuan=8b1111_1111;wei_xuan=6b111_111;endelse if(t = 4d7) /標(biāo)志清0t = 4d0;else if(Count2 = T4MS) /等于4MS,標(biāo)志位變化begincase(t)4d5: rData=rhour_Ten; 4d0: rData=rhour_One; 4d1: rData=rmin_Ten; 4d2: rData=rmin_One; 4d3: rData=rsec_Ten; 4d4: rData=rsec_One; endcaseif(t 4d6) /05次beginduan_xuan = SMGrData; /送段選wei_xuan = weit; /送位選 endif(t = 4d6) /第6次,秒閃beginif(rsec_One%2)beginduan_xuan = 8h7f; /送段選 wei_xuan = wei1; /送位選endelse beginduan_xuan = 8hff; /送段選 wei_xuan = wei1; /送位選 endendt = t + 1b1; /標(biāo)志加1endendendmodule /*= *名 稱: 按鍵子程序 *功 能: *接 口: *說(shuō) 明: 物理按鍵key_in按為0,松開(kāi)為1 *說(shuō) 明: 參考/yuphone/archive/2010/03/13/1684999.html *編者 時(shí)間: Ye.FuYao 2014-04-26 Cycione EP2C8Q208C8*=*/按鍵子程序module key_value(clk,RSTn,Key_in,key_val);input clk,RSTn;input 3:0Key_in; /讀取按鍵output 3:0key_val; /返回按鍵值reg 3:0key_val; /按下開(kāi)始reg 3:0key_samp1,key_samp1_locked;always (posedge clk or negedge RSTn)if(!RSTn)begin key_samp1 = 4b1111;key_samp1_locked = 4b1111;endelsebeginkey_samp1 = Key_in; /同一脈沖,現(xiàn)態(tài)(如按鍵Key_in0按下1110)key_samp1_locked = key_samp1;/同一脈沖,原態(tài)(如無(wú)按鍵按下1111)end/當(dāng)key_samp1由1變?yōu)?時(shí)/key_changed1由0變?yōu)?,只維持一個(gè)時(shí)鐘周期,下個(gè)周期key_changed1還是0;wire 3:0key_changed1;/按下標(biāo)志assign key_changed1 = key_samp1_locked & (key_samp1); /目的:一有按鍵按下就標(biāo)記一次 /延時(shí)20msreg 3:0key_samp2,key_samp2_locked;parameter T20MS=19d399_999; reg 18:0count;always (posedge clk or negedge RSTn)if(!RSTn)count=19d0;else if(key_changed1) /按鍵按下開(kāi)始清一次0count=19d0;else count=count+1b1; /按鍵按下直到按鍵松開(kāi),如果沒(méi)有抖動(dòng)/再次判斷/只有當(dāng)按鍵不變化(不抖動(dòng)),且維持20ms以上時(shí)/才將i_key采集至key_samp2always (posedge clk or negedge RSTn)if(!RSTn)key_samp2=4b1111;else if(count = T20MS) /20ms后,再判斷key_samp2=Key_in; always (posedge clk or negedge RSTn)if(!RSTn)key_samp2_locked=4b1111;elsekey_samp2_locked=key_samp2;/當(dāng)key_samp1由1變?yōu)?時(shí)/key_changed1由0變?yōu)?,只維持一個(gè)時(shí)鐘周期,下個(gè)周期key_changed1還是0;wire 3:0key_changed2;assign key_changed2 = key_samp2_locked & (key_samp2);/注意:這里按下為1松開(kāi)為0!/每次按鍵穩(wěn)定后,輸出鍵值always (posedge clk or negedge RSTn)if(!
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 營(yíng)銷策劃服務(wù)外包協(xié)議
- 短期宣傳平臺(tái)管理者合同
- 特變電工承包協(xié)議
- 短期綠化項(xiàng)目協(xié)議
- 環(huán)保材料采購(gòu)與產(chǎn)品性能測(cè)試合同
- 股權(quán)投資基金財(cái)務(wù)分析咨詢合同范本
- 信息化背景下的采購(gòu)合同執(zhí)行監(jiān)督機(jī)制
- 餐飲行業(yè)服務(wù)員派遣與勞動(dòng)權(quán)益保障合同
- 營(yíng)銷團(tuán)隊(duì)培訓(xùn)與執(zhí)行勞動(dòng)合同
- 高端社區(qū)車位產(chǎn)權(quán)交易及維護(hù)保養(yǎng)合同
- 2025年初中學(xué)業(yè)水平考試語(yǔ)文模擬試卷(四)
- 光伏項(xiàng)目監(jiān)理竣工報(bào)告模
- 福建省普通高中2023年學(xué)業(yè)水平合格性考試數(shù)學(xué)試題(原卷版)
- 2024年安徽省初中學(xué)業(yè)水平考試生物試題含答案
- 2025年小學(xué)一年級(jí)數(shù)學(xué)下冊(cè)無(wú)紙筆化評(píng)價(jià)方案及檢測(cè)題
- 法規(guī)解讀丨2024新版《突發(fā)事件應(yīng)對(duì)法》及其應(yīng)用案例
- 《穴位敷貼技術(shù)》課件
- 【MOOC】循證醫(yī)學(xué)-南通大學(xué) 中國(guó)大學(xué)慕課MOOC答案
- 交叉相位調(diào)制
- 氣壓傳動(dòng)課件 項(xiàng)目七任務(wù)一 氣動(dòng)機(jī)床夾緊系統(tǒng)
- 2024年特崗教師招聘考試-幼兒特崗教師招聘考試近5年真題集錦(頻考類試題)帶答案
評(píng)論
0/150
提交評(píng)論