EDA課程設(shè)計報告20頁_第1頁
EDA課程設(shè)計報告20頁_第2頁
EDA課程設(shè)計報告20頁_第3頁
EDA課程設(shè)計報告20頁_第4頁
EDA課程設(shè)計報告20頁_第5頁
已閱讀5頁,還剩15頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、 課 程 設(shè) 計課程名稱 EDA技術(shù) 課題名稱 電子時鐘的設(shè)計 專 業(yè) 電子技術(shù) 班 級 學(xué) 號 姓 名 指導(dǎo)教師 陳意軍 2012 年 6 月 23 日 湖南工程學(xué)院課程設(shè)計任務(wù)書 課程名稱:eda技術(shù) 題 目:多功能電子鐘的設(shè)計 專業(yè)班級:電子科學(xué)與技術(shù) 學(xué)生姓名: 指導(dǎo)老師:陳 意 軍 審 批:任務(wù)書下達期 2012年 6 月10 日設(shè)計完成日期 2012年6 月 23 日 設(shè)計內(nèi)容與設(shè)計要求一 設(shè)計內(nèi)容:1 設(shè)計并調(diào)試鍵盤掃描與數(shù)碼管顯示電路;2 鍵盤為3*4,數(shù)碼管為7段8位;3 以數(shù)字形式顯示鍵盤12個輸入鍵的識別;4 外設(shè)置控制開關(guān)和防抖動電路;5 功能擴展(自選);完成加減運算

2、或某外部硬件對象的控制 二 設(shè)計要求:1.設(shè)計思路清晰,整體設(shè)計給出框圖,提供頂層電路圖;2.應(yīng)用vhdl或verilog完成各次級模塊設(shè)計,給出具體設(shè)計程序;3.完成設(shè)計仿真和程序下載; 4.寫出設(shè)計報告 主要設(shè)計條件1 提供EDA實驗室;2 提供EL實驗箱和CPLD芯片3 提供ALTERA公司的quartus設(shè)計軟件; 說明書格式1 課程設(shè)計封面;2 任務(wù)書;3 說明書目錄;4 設(shè)計總體思路;5 單元電路設(shè)計程序;6 設(shè)計仿真;7 編程下載;8 總結(jié)與體會;9 附錄;10 參考文獻 進 度 安 排 月 日 日 課題電路設(shè)計。 月 日日 總體電路設(shè)計和子模塊設(shè)計 月 日 日 軟件仿真和聯(lián)線。

3、 月 日 日 電路調(diào)試 月 日 寫設(shè)計報告,打印相關(guān)圖紙, 月 日 答辯; 參 考 文 獻目錄一 引言.1二 設(shè)計目的及總體方框圖.1三 電子時鐘功能.1四 電子時鐘設(shè)計.24.1設(shè)計思路.24.2電子時鐘各個模塊的設(shè)計.24.2.1秒計時器的設(shè)計.24.2.2分計時器的設(shè)計.44.2.3時計時器的設(shè)計.54.2.4 7段譯碼器的設(shè)計.84.2.5 整點報時器的設(shè)計.9五 電子時鐘頂層電路圖.11六 系統(tǒng)仿真波形.11七 硬件測試及引腳的鎖定.12八 設(shè)計心得與體會.13一 引言EDA技術(shù)在電子設(shè)計領(lǐng)域越來越普及,本設(shè)計主要利用VHDL語言在EDA平臺上設(shè)計一個電子數(shù)字時鐘,它的計時周期為24

4、小時,顯示的最大時間為23時59分59秒,另外還具有校時功能和整點報時功能??偟某绦蛴?個模塊組成,分別為秒計時器、分計時器、時計時器、7段顯示譯碼器和整點報時器。二 設(shè)計目的及總體方框圖此次設(shè)計的主要目的是學(xué)會使用quartus軟件,掌握用VHDL語言設(shè)計編寫源程序,并要求下載到實驗箱實現(xiàn)所實現(xiàn)電子時鐘的各項功能。通過這次設(shè)計,讓我們加深對理論知識的理解,培養(yǎng)理論聯(lián)系實際的能力,提高分析問題和解決問題的能力總體方框圖三 電子時鐘功能(1)計時功能:這是電子時鐘的基本功能,每隔一秒鐘計時一次,并在顯示屏上顯示當時時間。(2)校時功能:能設(shè)置實時時間作為數(shù)字鐘的當前時間,具有小時、分鐘、秒鐘的校

5、準時間功能。(3)整點報時功能:每逢整點,整點報時器自動報時。四 電子時鐘設(shè)計4.1 設(shè)計思路該數(shù)字鐘可以實現(xiàn)3個功能:計時功能、整點報時功能和重置時間功能,因此有3個子模塊:計時、報時、重置時間。其中計時模塊由3部分構(gòu)成:秒計時器、分計時器和時計時器。秒計時器和分計時器都是由60進制的計數(shù)器構(gòu)成的,具有清0、置數(shù)和計數(shù)功能。當清0信號為低電平時,計時器清0;當置數(shù)信號為高電平時,計時器置數(shù);clk為脈沖信號,ci為輸入信號。co為計時器的進位信號,作為下一級的輸入信號。時計時器是由一個24進制的計數(shù)器構(gòu)成的,具有清0、置數(shù)和計數(shù)功能。當清0信號為低電平時,計時器清0;當置數(shù)信號為高電平時,計

6、時器置數(shù);clk為脈沖信號,ci為輸入信號。7段數(shù)碼顯示模塊的功能是在顯示屏上顯示當時時間。1對應(yīng)的顯示代碼為0110000,2對應(yīng)的顯示代碼為1101101,3對應(yīng)的顯示代碼為1111001,4對應(yīng)的顯示代碼為0110011,5對應(yīng)的顯示代碼為1011011,6對應(yīng)的顯示代碼為1011111,7對應(yīng)的顯示代碼為1110000,8對應(yīng)的顯示代碼為1111111,9對應(yīng)的顯示代碼為1111011,0對應(yīng)的顯示代碼為1111110。報時模塊的功能是當整點時,報時器輸出高電平,并且持續(xù)1分鐘。4.2 電子時鐘各模塊的設(shè)計4.2.1 秒計時器的設(shè)計(1)秒計時器源程序library ieee;use

7、ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity second isport(clk,ci,nreset,load:in std_logic; d:in std_logic_vector(7 downto 0); co:out std_logic; qh:buffer std_logic_vector(3 downto 0); ql:buffer std_logic_vector(3 downto 0);end second;architecture behave of second isbegin co=1when(

8、qh=0101and ql=1001and ci=1)else0; process(clk,nreset) begin if(nreset=0)then qh=0000; ql=0000; elsif(clkevent and clk=1)then if(load=1)then qh=d(7 downto 4); ql=d(3 downto 0); elsif(ci=1)then if(ql=9)then ql=0000; if(qh=5)then qh=0000; else qh=qh+1; end if; else ql=ql+1; end if; end if; end if; end

9、process;end behave;(2)秒計時器仿真波形在秒計時器的(clk)輸入一個周期為(2us)的時鐘信號;清0端(nreset)前面一小段為低電平,后面均為高電平;置數(shù)端(load)中間一段為高電平,其余均為低電平;將(ci)端置高電平,秒重置端(d)置數(shù)值為56秒,進行仿真,產(chǎn)生如下波形:圖1 秒計時器仿真波形圖由上述波形可以清楚的看到:當清0信號(reset)無效時,秒計時器置數(shù),從50秒開始計數(shù),到59秒時回到0,并且從ensec輸出一個高電平。(3)秒計時器原理圖圖2 秒計時器原理圖4.2.2 分計時器的設(shè)計(1)分計時器源程序library ieee;use ieee.s

10、td_logic_1164.all;use ieee.std_logic_unsigned.all;entity minute isport(clk,ci,nreset,load:in std_logic; d:in std_logic_vector(7 downto 0); co:out std_logic; qh:buffer std_logic_vector(3 downto 0); ql:buffer std_logic_vector(3 downto 0);end minute;architecture behave of minute isbegin co=1when(qh=010

11、1and ql=1001and ci=1)else0; process(clk,nreset) begin if(nreset=0)then qh=0000; ql=0000; elsif(clkevent and clk=1)then if(load=1)then qh=d(7 downto 4); ql=d(3 downto 0); elsif(ci=1)then if(ql=9)then ql=0000; if(qh=5)then qh=0000; else qh=qh+1; end if; else ql=ql+1; end if; end if; end if; end proces

12、s;end behave;(2)分計時器仿真波形在分計時器的(clk)輸入一個周期為(2us)的時鐘信號;清0端(nreset)前面一小段為低電平,后面均為高電平;置數(shù)端(load)中間一段為高電平,其余均為低電平;將(ci)端置高電平,分重置端(d)置數(shù)值為56分,進行仿真,產(chǎn)生如下波形:圖3 分計時器仿真波形圖(3)分計時器原理圖圖4 分計時器原理圖4.2.3 時計時器的設(shè)計(1)時計時器源程序library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity hours isport(clk,ci

13、,nreset,load:in std_logic; d:in std_logic_vector(7 downto 0); qh:buffer std_logic_vector(3 downto 0); ql:buffer std_logic_vector(3 downto 0);end hours;architecture behave of hours isbegin process(clk,nreset) begin if(nreset=0)then qh=0000; ql=0000; elsif(clkevent and clk=1)then if(load=1)then qh=d(7

14、 downto 4); ql=d(3 downto 0); elsif(ci=1)then if(qh=0010and ql=0011)then qh=0000; ql=0000; elsif(ql=9)then ql=0000; if(qh=2)then qh=0000; else qh=qh+1; end if; else ql=ql+1; end if; end if; end if; end process;end behave;(2)時計時器仿真波形在時計時器的(clk)輸入一個周期為(2us)的時鐘信號;清0端(nreset)前面一小段為低電平,后面均為高電平;置數(shù)端(load)中

15、間一段為高電平,其余均為低電平;將(ci)端置高電平,時重置端(d)置數(shù)值為21時,進行仿真,產(chǎn)生如下波形:圖5 時計時器仿真波形圖(3)時計時器原理圖圖6 時計時器原理圖4.2.4 7段顯示譯碼器的設(shè)計(1)7段顯示譯碼器源程序library ieee;use ieee.std_logic_1164.all;entity decl7 is port(d:in std_logic_vector(3 downto 0); x:out std_logic_vector(6 downto 0);end decl7;architecture a of decl7 isbegin with d sele

16、ct x=1111110when0000, 0110000when0001, 1101101when0010, 1111001when0011, 0110011when0100, 1011011when0101, 1011111when0110, 1110000when0111, 1111111when1000, 1111011when1001, 0000000when others;end a;(2)7段顯示譯碼器仿真波形設(shè)置d的值,使其分別為1、2、39,保存波形,進行仿真,其仿真波形如下:圖7 7段顯示譯碼器仿真波形圖(3)7段顯示譯碼器原理圖圖8 7段顯示譯碼器原理圖4.2.5 整點報

17、時器的設(shè)計(1)整點報時器源程序library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_arith.all;use ieee.std_logic_unsigned.all;entity alarm is port(nreset:in std_logic; minh:in std_logic_vector(3 downto 0); minl:in std_logic_vector(3 downto 0); alarm:out std_logic);end;architecture behave of alarm isbeginala

18、rm=1 when (minh=0000 and minl=0000 and nreset=1)else0;end behave;(2)整點報時器仿真波形清0端(reset)前面一小段為低電平,后面均為高電平;設(shè)置min的值,保存波形圖,進行仿真,產(chǎn)生如下波形:圖9 整點報時器仿真波形圖(3)整點報時器原理圖圖10 整點報時器原理圖五 電子時鐘頂層電路圖圖11 電子時鐘頂層電路圖六 系統(tǒng)仿真波形圖12 系統(tǒng)仿真波形圖七 硬件測試及引腳鎖定將所設(shè)計的原理圖進行引腳鎖定,鎖定后下載到實驗箱檢測。引腳鎖定時采用的是模式0,將原理圖上各輸入輸出信號分別鎖定在對應(yīng)的引腳。其中清零、調(diào)時信號管腳分別與按鍵開關(guān)相連,時鐘信號clk管腳與1hz時鐘相連,揚聲器SPEAK管腳與揚聲器驅(qū)動接口SPEAKER相連,7段譯碼顯示管的6個管腳分別與6個LED燈相連。圖13 引腳鎖定圖八 設(shè)計心得與體會在這次設(shè)計中我收獲了很多,通過這次設(shè)計,進一步加深了對EDA的了解,讓我更加熟悉使用

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論