EDA課程設(shè)計報告-數(shù)字鐘_第1頁
EDA課程設(shè)計報告-數(shù)字鐘_第2頁
EDA課程設(shè)計報告-數(shù)字鐘_第3頁
EDA課程設(shè)計報告-數(shù)字鐘_第4頁
EDA課程設(shè)計報告-數(shù)字鐘_第5頁
已閱讀5頁,還剩9頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、石家莊經(jīng)濟(jì)學(xué)院信息工程學(xué)院電子信息工程專業(yè)eda技術(shù)課程設(shè)計報告題目: 數(shù)字秒表 姓 名 白文芳 學(xué) 號 408109060116 班 級 4081090102 指導(dǎo)教師 孫思梅 2011年 1 月 12 日課程設(shè)計任務(wù)書班級 4081090102 姓名 白文芳 學(xué)號 408109060116 課程設(shè)計題目 數(shù)字秒表 課程設(shè)計起止日期 2010-12-27 至 2011-1-14 實習(xí)地點 實驗樓308 課程設(shè)計內(nèi)容與要求: 設(shè)計一個以0.01s為基準(zhǔn)計時信號的實用數(shù)字式秒表。 要求:1、及格:計時顯示范圍059min59.59s; 2、中:具有清零、啟動計時、暫停計時及繼續(xù)計時功能,操作按鍵

2、(開關(guān))不超過兩個; 3、良:有倒計時功能; 4、優(yōu):具有記錄最近10次計時操作結(jié)果的功能。 指導(dǎo)教師 孫思梅 2010 年12 月 27 日一、設(shè)計原理與技術(shù)方法:包括:電路工作原理分析與原理圖、元器件選擇與參數(shù)計算、電路調(diào)試方法與結(jié)果說明;軟件設(shè)計說明書與流程圖、軟件源程序代碼、軟件調(diào)試方法與運(yùn)行結(jié)果說明。(一)設(shè)計流程1、設(shè)計實驗?zāi)康模?在max+plusii軟件平臺上,熟練運(yùn)用vhdl語言,完成數(shù)字時鐘設(shè)計的軟件編程、編譯、綜合、仿真,使用eda實驗箱,實現(xiàn)數(shù)字秒表的硬件功能。2、設(shè)計原理總體框圖:本系統(tǒng)設(shè)計采用自頂向下的設(shè)計方案,系統(tǒng)的整體組裝設(shè)計原理框圖如圖(1)所示,它主要由控制

3、模塊、時基分頻模塊,計時模塊和顯示模塊四部分組成。各模塊分別完成計時過程的控制功能、計時功能與顯示功能。數(shù)字秒表計時控制電路計時電路 顯示電路控制狀態(tài)機(jī)時基分頻電路計數(shù)器掃描電路七段譯碼器六十進(jìn)制計數(shù)器六十進(jìn)制計數(shù)器六十進(jìn)制計數(shù)器 圖1 數(shù)字秒表系統(tǒng)原理框圖3、數(shù)字秒表組成及功能:1)計時控制模塊的作用是針對計時過程進(jìn)行控制。計時控制模塊可用倆個按鈕來完成秒表的啟動、停止和復(fù)位。 2) 時基分頻模塊的作用把輸入時鐘信號變?yōu)榉诸l輸出信號,輸出頻率為100hz的時鐘脈沖。 3)計時模塊執(zhí)行計時功能,計時方法和計算機(jī)一樣是對標(biāo)準(zhǔn)時鐘脈沖計數(shù)。他是由三個十進(jìn)制計數(shù)器和三個六進(jìn)制計數(shù)器構(gòu)成,其中毫秒位、

4、秒位和分位采用十進(jìn)制計數(shù)器,分秒位和十秒位十分位采用六進(jìn)制計數(shù)器。4)計時顯示電路的作用是將計時值在led數(shù)碼管上顯示出來。計時電路產(chǎn)生的值經(jīng)過bcd七段譯碼后,驅(qū)動led數(shù)碼管。計時顯示電路的實現(xiàn)方案采用掃描顯示。4、系統(tǒng)硬件要求:1、時鐘信號為2.5mhz;2、fpga芯片型號epm7128lc844,6個7段掃描共陰級數(shù)碼顯示管;3、按鍵開關(guān)(復(fù)位、啟動);5、設(shè)計內(nèi)容及步驟:1)根據(jù)電路特點,用層次設(shè)計概念。將此設(shè)計任務(wù)分成若干模塊,規(guī)定每一模塊的功能和各模塊之間的接口,同時加深層次化設(shè)計概念;2)軟件的元件管理深層含義,以及模塊元件之間的連接概念,對于不同目錄下的同一設(shè)計,如何熔合;

5、3)適配劃分前后的仿真內(nèi)容有何不同概念,仿真信號對象有何不同,有更深一步了解。4)按適配劃分后的管腳定位,同相關(guān)功能塊硬件電路接口連線;5)所有模塊采用vhdl語言設(shè)計。6、硬件實現(xiàn) 將時序仿真正確的文件下載到實驗箱中的epm7128lc844中,通過合適的管腳分配,將相應(yīng)的管腳連接起來,驗證設(shè)計是否完成設(shè)計要求;(二)數(shù)字秒表的總體設(shè)計圖(圖2) 圖2 數(shù)字秒表的總體設(shè)計圖(三)數(shù)字秒表各個模塊的vhdl語言設(shè)計1、時基分頻模塊 將實驗箱提供的2.5mhz的時鐘脈沖分頻后變成100hz的脈沖,該模塊的vhdl設(shè)計代碼如下:library ieee; use ieee.std_logic_11

6、64.all;entity cb10 is port(clk: in std_logic; co:out std_logic);end cb10;architecture art of cb10 is signal counter:integer range 0 to 24999;begin process(clk) begin if (clk=1 and clkevent) then if counter=12499 then counter=0; else counter=counter+1; end if; end if; end process;process(counter)begi

7、n if counter=24999 then co=1; else co=0; end if; end process;end art;2、計數(shù)模塊十進(jìn)制計數(shù)模塊的vhdl設(shè)計如下:library ieee; use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity ten isport(clk,clr,en:in std_logic; y:out std_logic_vector(3 downto 0); co:out std_logic);end entity ten;architecture art of te

8、n is signal count10:std_logic_vector(3 downto 0);begin y=count10;process(clk,clr,en)beginif clr=1 then count10=0000;elsif (clkevent and clk=1)thenif (en=1)thenif count10=1001then count10=0000;co=1;else count10=count10+1; co=0;end if;end if;end if;end process;end art;六進(jìn)制計數(shù)模塊的vhdl設(shè)計如下:library ieee; us

9、e ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity six isport(clk,clr,en:in std_logic; y:out std_logic_vector(3 downto 0); co:out std_logic);end entity six;architecture art of six is signal count6:std_logic_vector(3 downto 0);begin y=count6;process(clk,clr,en)beginif clr=1 then count6=

10、0000;elsif (clkevent and clk=1)thenif (en=1)thenif count6=0101then count6=0000;co=1;else count6=count6+1; co=0;end if;end if;end if;end process;end art;3、顯示模塊計時顯示電路的作用是將計時值在led數(shù)碼管上顯示出來。計時電路產(chǎn)生的值經(jīng)過bcd七段譯碼后,驅(qū)動led數(shù)碼管。計時顯示電路的實現(xiàn)方案采用掃描顯示。(1)選擇器, 選通六個數(shù)碼管分別顯示時鐘各位。代碼如下:library ieee;use ieee.std_logic_1164.all

11、;use ieee.std_logic_unsigned.all;entity cz isport(clk,clr:in std_logic; x,y,z:out std_logic);end cz;architecture art of cz issignal count_3:std_logic_vector(2 downto 0);beginx=count_3(0);y=count_3(1);z=count_3(2);process(clk,clr)beginif(clr=1)then count_3=000;elsif(clkevent and clk=1)thenif(count_3=

12、100)then count_3=count_3+1;else count_3=000; end if;end if;end process;end art;(2)計數(shù)器library ieee;use ieee.std_logic_1164.all;entity choice_6 isport(a:in std_logic_vector(3 downto 0); b:in std_logic_vector(3 downto 0); c:in std_logic_vector(3 downto 0); d:in std_logic_vector(3 downto 0); e:in std_lo

13、gic_vector(3 downto 0); f:in std_logic_vector(3 downto 0); x,y,z:in std_logic; bcd:out std_logic_vector(3 downto 0); end choice_6;architecture art of choice_6 issignal sel:std_logic_vector(2 downto 0);begin sel=x&y&z;process(sel)beginif(sel=000)then bcd=a;elsif(sel=001)then bcd=b;elsif(sel=010)then

14、bcd=c;elsif(sel=011)then bcd=d;elsif(sel=100)then bcd=e;else bcd=f;end if;end process;end art; (3)bcd譯碼器library ieee;use ieee.std_logic_1164.all;entity bcd isport(d:in std_logic_vector(3 downto 0); y:out std_logic_vector(6 downto 0);end entity bcd;architecture art of bcd isbeginwith d select y=11111

15、10when0000, 0110000when0001, 1101101when0010, 1111001when0011, 0110011when0100, 1011011when0101, 1011111when0110, 1110000when0111, 1111111when1000, 1111011when1001, 0000000when others;end architecture art;(四)系統(tǒng)仿真(1)時基分頻模塊的仿真: 圖3 時基分頻模塊的仿真分析:將實驗箱上2.5m的時鐘信號進(jìn)行25000的分頻,得到100hz的時鐘信號。(2)十進(jìn)制波形仿真:圖4 十進(jìn)制波形仿真

16、分析:每一個時鐘脈沖到來,計數(shù)值加1,到9進(jìn)1返回0。(3)六進(jìn)制波形仿真: 圖5六進(jìn)制波形仿真分析:每一個時鐘脈沖到來,計數(shù)值加1,到5進(jìn)1返回0。(4)選擇器cz波形仿真:圖6 圖6 選擇器cz波形仿真分析;clk,clr為輸入信號,x、y、z為輸出信號。(5)計數(shù)器的波形仿真:圖7圖7計數(shù)器的波形仿真分析:x、y、z是輸入信號。a是百分秒計數(shù)器,b是十分秒計數(shù)器,c是秒計數(shù)值,d是十秒計數(shù)器,e是分計數(shù)器,f是十分計數(shù)器,s_10min是十分計數(shù)器,hour是小時計數(shù)器。它們均為輸入信號。x、y、z的組合選擇六個數(shù)碼管將六位數(shù)值顯示出來。(6)bcd七段譯碼器的波形仿真:圖8 bcd七段

17、譯碼器的波形仿真(7)整個數(shù)字秒表的波形仿真:圖9 圖 9整個數(shù)字秒表的波形仿真分析:秒表開始從零開始計數(shù),每次增加10ms。工作很正常的進(jìn)行。(五)課程設(shè)計工作記錄包括:設(shè)計步驟與時間安排、調(diào)試步驟與時間安排、課題完成結(jié)果說明(1)時間安排記錄: 2010-12-272010-12-28:確定設(shè)計題目為數(shù)字秒表,并查閱相關(guān)資料。2010-12-292011-01-02:進(jìn)行各程序模塊的設(shè)計,在實驗箱上進(jìn)行驗證仿真。2011-01-032011-01-07:將各個模塊綜合在一起,進(jìn)行整體的設(shè)計,調(diào)試無誤后,下載到實驗箱上進(jìn)行仿真,直至程序正確無誤的運(yùn)行。(2)運(yùn)行結(jié)果說明:本設(shè)計完成到中的水平;開始狀態(tài),復(fù)位開關(guān)clr處在低電平狀態(tài),暫停開關(guān)en處在高電平,秒表開始從零開始計數(shù),每次增加10ms。工作很正常的進(jìn)行; 將en撥到低電平,秒表計時停止,再撥到高,繼續(xù)計時; 將clr撥到高電平,計時恢復(fù)到零,再撥到低電平,再次從零開始計時。(

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論