資源描述:
《eda_課程設(shè)計(jì)報(bào)告--數(shù)字時(shí)鐘設(shè)計(jì)》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在學(xué)術(shù)論文-天天文庫(kù)。
1、電子信息科學(xué)與技術(shù)EDA課程設(shè)計(jì)報(bào)告設(shè)計(jì)題目:數(shù)字時(shí)鐘的設(shè)計(jì)班級(jí):電子1201一、實(shí)驗(yàn)?zāi)康膶W(xué)習(xí)并掌握數(shù)字鐘的原理、設(shè)計(jì)方法。二、實(shí)驗(yàn)內(nèi)容計(jì)數(shù)始終由模60秒計(jì)數(shù)器、模60分計(jì)數(shù)器、模24小時(shí)計(jì)數(shù)器、報(bào)時(shí)模塊、分,時(shí)校定模塊及輸出顯示組成,可以采用同步計(jì)數(shù)器或異步計(jì)數(shù)器設(shè)計(jì)方法。三、實(shí)驗(yàn)要求1、計(jì)時(shí)范圍為0小時(shí)0分0秒至23小時(shí)59分59秒。2、采用6個(gè)8段數(shù)碼管分別顯示小時(shí)十位,小時(shí)個(gè)位,分鐘十位,分鐘個(gè)位,秒十位,秒個(gè)位。3、整點(diǎn)報(bào)時(shí),蜂鳴器響5聲,每秒響一聲。4、校時(shí)功能能夠單獨(dú)校分,校時(shí),校秒,用按鍵控制。5、
2、具有清零,啟動(dòng),停止計(jì)數(shù)功能,用按鍵控制。6、采用靜態(tài)掃描方式顯示。四、系統(tǒng)設(shè)計(jì)方案1、整個(gè)模塊采用一個(gè)時(shí)鐘,時(shí)鐘的頻率為一秒,用于程序秒的輸入。2、時(shí)分秒皆采用兩個(gè)位的計(jì)數(shù),一位代表十位,一位代表個(gè)位。分秒為60進(jìn)制,時(shí)為24進(jìn)制。個(gè)位逢九向十位進(jìn)一,秒逢59向分進(jìn)一,分逢59向時(shí)進(jìn)一。3、在小時(shí)的子程序里把兩位小時(shí)數(shù)轉(zhuǎn)換成一位數(shù)作為報(bào)時(shí)程序的輸入。五、主要VHDL源程序主程序:主要將建好的模60秒計(jì)數(shù)器、模60分計(jì)數(shù)器、模24小時(shí)計(jì)數(shù)器、報(bào)時(shí)模塊、分,時(shí)校定模塊,譯碼模塊連接起來(lái)。用的是端口映射方式。libra
3、ryieee;useieee.std_logic_1164.all;useieee.std_logic_unsigned.all;useieee.std_logic_arith.all;entitytime1is--generic(N:integer:=60);port(clk:instd_logic;reset:instd_logic;stop:instd_logic;clock_out:outstd_logic;min_add:instd_logic;hour_add:instd_logic;secout_1:
4、outstd_logic_vector(6downto0);secout_2:outstd_logic_vector(6downto0);min_out_1:outstd_logic_vector(6downto0);min_out_2:outstd_logic_vector(6downto0);hour_cout_1:outstd_logic_vector(6downto0);hour_cout_2:outstd_logic_vector(6downto0));endentitytime1;architectur
5、extime1oftime1is--60scomponentsecoudisport(clk:instd_logic;reset:instd_logic;secout1:outintegerrange0to9;secout2:outintegerrange0to9;--0to5en_min:outstd_logic);endcomponentsecoud;--60mincomponentminuteisport(en_min:instd_logic;reset:instd_logic;min_out1:outint
6、egerrange0to9;min_out2:outintegerrange0to9;--0to5en_hour:outstd_logic);endcomponentminute;--24hourcomponenthourisport(en_hour:instd_logic;reset:instd_logic;hour_cout1:outintegerrange0to9;hour_cout2:outintegerrange0to9--0to2);endcomponenthour;--yimacomponentdec
7、ode_disisport(din:inintegerrange0to9;dout:outstd_logic_vector(6downto0));endcomponentdecode_dis;--huomencomponentor_2isport(a:instd_logic;b:instd_logic;c:outstd_logic);endcomponentor_2;--div_stopcomponentdiv_stopisport(clk:instd_logic;stop:instd_logic;clk_out:
8、outstd_logic);endcomponentdiv_stop;--clock_bitcomponentclock_bitisport(min_in1:inintegerrange0to9;min_in2:inintegerrange0to9;sec_in1:inintegerrange0to9;sec_in2:inintegerrange0to9;c