版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、<p><b> 《電子設(shè)計自動化》</b></p><p><b> 課程設(shè)計</b></p><p> 題目: 帶鬧鐘功能的數(shù)字石英時鐘電路 </p><p> 院(系) 信息科學(xué)與工程學(xué)院 </p><p> 專
2、 業(yè) 通信工程 </p><p> 屆 別 2011級 </p><p> 班 級 </p><p> 學(xué) 號 </p><
3、;p> 姓 名 </p><p> 任課老師 </p><p><b> 摘要:</b></p><p> 本課程設(shè)計旨在設(shè)計一個可用EP2C5T144C8芯片實現(xiàn)的簡易手表電路,帶有24小時循環(huán)功能、時
4、間設(shè)定功能、鬧鐘功能以及星期顯示功能。通過EDA課程的深入學(xué)習(xí),電子設(shè)計自動化技術(shù),先用文字描述出電路功能,通過自頂向下思想,構(gòu)思出所需小單元模塊,再分別寫出組成電路所需要的模塊的程序,并用QUARTERS軟件生成各個模塊的系統(tǒng)框圖, 新建block diagram文件,添加各個模塊,然后用線路連接好。調(diào)試成功后進行波形仿真,檢驗電路的正確性,并加以修改與改進。其次,將程序下載到芯片里,進行硬件測試。</p><p&
5、gt; 結(jié)果硬件功能與設(shè)想一致,結(jié)論:手表儀器可用EDA實現(xiàn)其軟件功能,用EP2C5T144C8芯片及各種簡單電子器件實現(xiàn)其硬件功能。</p><p><b> 目錄</b></p><p> 1正文·············
6、3;····································
7、183;······2</p><p> 1.1系統(tǒng)設(shè)計·························
8、;························2 </p><p> 1.2單元電路設(shè)計······
9、;····································
10、83;··2</p><p> 1.3系統(tǒng)設(shè)計·····························
11、····················7</p><p> 1.4結(jié)論············
12、;····································
13、83;····7</p><p> 2參考文獻···························
14、183;·························7</p><p><b> 正文</b></p><p>
15、<b> 系統(tǒng)設(shè)計</b></p><p> 設(shè)計要求:帶鬧鐘功能的數(shù)字石英時鐘電路(難度系數(shù)1.1)</p><p> 要求:LED數(shù)碼管顯示小時、分鐘及秒;時間可任意設(shè)置;外部時鐘信號采用石英晶振頻率(32768HZ);可設(shè)定鬧鐘時間,鬧鐘時間到發(fā)出警告信號。</p><p><b> 系統(tǒng)設(shè)計方案:</b>&
16、lt;/p><p> 設(shè)計方案1,在block program文件里直接列出所有需要的小模塊,各個小模塊為最基礎(chǔ)的模塊,不可再劃分,然后進行連接,實現(xiàn)功能; </p><p> 設(shè)計方案2,將系統(tǒng)劃分為定時、計數(shù)、鬧鐘三大塊,每塊分別獨立設(shè)計,生成block文件,最后將三大塊組合起來。</p><p>
17、 方案1的方法直接簡單,但是線路會比較復(fù)雜,排查問題也比較困難;方案2分層設(shè)計,框圖會簡潔明了,但是設(shè)計步驟比方案1多了一步把小模塊整合。2個方案都可行,筆者選擇第一種方案。</p><p><b> 單元電路設(shè)計</b></p><p> 該設(shè)計電路分為四大塊:時鐘電路部分、定時部分、鬧鐘部分、數(shù)碼管輸出選擇部分</p><p> 。
18、接下去一一介紹它們的組成,程序,及系統(tǒng)框圖。</p><p> 1.時鐘電路部分由2個10進制計數(shù)器,2個6進制計數(shù)器,1個24進制計數(shù)器組成,起始輸入脈沖頻率為32768HZ,經(jīng)過一個32768計數(shù)器。</p><p><b> 10進制程序</b></p><p> LIBRARY IEEE;</p><p>
19、 USE IEEE.STD_LOGIC_1164.ALL;</p><p> USE IEEE.STD_LOGIC_UNSIGNED.ALL;</p><p> ENTITY COUNT_10 IS</p><p> PORT ( CLK,RST,EN :IN STD_LOGIC ;</p><p> Q:OUT STD_LOG
20、IC_VECTOR(3 DOWNTO 0);</p><p> COUT : OUT STD_LOGIC );</p><p> END COUNT_10 ; </p><p> ARCHITECTURE bhv OF COUNT_10 IS</p><p> SIGNAL Q1 : STD_LOGIC_VECTOR(3 DOWNT
21、O 0);</p><p> SIGNAL Q2: STD_LOGIC ;</p><p><b> BEGIN</b></p><p> PROCESS (CLK, RST, EN ) </p><p><b> BEGIN</b></p><p> IF RS
22、T ='1' THEN Q1 <= (OTHERS =>'0');</p><p> ELSIF CLK'EVENT AND CLK='1' THEN</p><p> IF EN ='0' THEN</p><p> IF Q1 <9 THEN Q1 <= Q1
23、+1;COUT <= '0';</p><p> ELSE Q1 <= (OTHERS =>'0');COUT <='1'; </p><p><b> END IF;</b></p><p> END IF; END IF; </p>&
24、lt;p> END PROCESS;</p><p><b> Q <= Q1;</b></p><p><b> END bhv ;</b></p><p><b> 6進制程序</b></p><p> LIBRARY IEEE;</p>
25、<p> USE IEEE.STD_LOGIC_1164.ALL;</p><p> USE IEEE.STD_LOGIC_UNSIGNED.ALL;</p><p> ENTITY COUNT_10 IS</p><p> PORT ( CLK,RST,EN :IN STD_LOGIC ;</p><p> Q :
26、OUT STD_LOGIC_VECTOR(3 DOWNTO 0);</p><p> COUT :OUT STD_LOGIC);</p><p> END COUNT_10;</p><p> ARCHITECTURE bhv OF COUNT_10 IS</p><p><b> BEGIN</b></p
27、><p> PROCESS (CLK, RST, EN )</p><p> VARIABLE Q1: STD_LOGIC_VECTOR(3 DOWNTO 0); </p><p><b> BEGIN</b></p><p> IF RST ='1' THEN Q1 := (OTHER
28、S =>'0');</p><p> ELSIF CLK'EVENT AND CLK='1' THEN</p><p> IF EN ='0' THEN</p><p> IF Q1 <5 THEN Q1 := Q1 +1;COUT<='0';</p>&l
29、t;p> ELSE Q1 := (OTHERS =>'0');COUT<='1'; END IF;</p><p> END IF END IF;</p><p><b> Q <= Q1; </b></p><p> END PROCESS ;</p><p
30、><b> END bhv ;</b></p><p><b> 24進制程序</b></p><p> LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;</p><p> ENTITY COUNT_24 IS&
31、lt;/p><p> PORT ( CLK,RST,EN :IN STD_LOGIC ;</p><p> Q,COUT :OUT STD_LOGIC_VECTOR(3 DOWNTO 0);</p><p> DAY:OUT STD_LOGIC);</p><p> END COUNT_24 ;</p><p>
32、; ARCHITECTURE bhv OF COUNT_24 IS</p><p> SIGNAL Q1,Q2: STD_LOGIC_VECTOR(3 DOWNTO 0);</p><p> SIGNAL Q3:STD_LOGIC;</p><p><b> BEGIN</b></p><p> PROCESS
33、 (CLK, RST, EN )</p><p><b> BEGIN</b></p><p> IF RST ='1' THEN Q1 <= (OTHERS =>'0');Q2 <= (OTHERS =>'0');</p><p> ELSIF CLK'EV
34、ENT AND CLK='1' THEN</p><p> IF EN ='0' THEN</p><p> IF Q1 <9 THEN Q1 <= Q1 +1;</p><p> ELSE Q1 <= (OTHERS =>'0'); Q2 <= Q2+1 ; END IF;&l
35、t;/p><p> IF Q2 = "0010" AND Q1 = "0011" THEN Q1 <="0000" ; Q2 <="0000" ;Q3<='1';</p><p> ELSE Q3<='0';</p><p> E
36、ND IF;END IF; END IF;</p><p> Q <= Q1;COUT <= Q2 ;DAY<=Q3;</p><p> END PROCESS ; </p><p><b> END bhv ;</b></p><p><b> 32768計數(shù)器
37、</b></p><p> LIBRARY IEEE;</p><p> USE IEEE.STD_LOGIC_1164.ALL;</p><p> USE IEEE.STD_LOGIC_UNSIGNED.ALL;</p><p> ENTITY CT32768 IS</p><p> PORT
38、( CLK,RST,EN :IN STD_LOGIC ;</p><p> Q :OUT STD_LOGIC_VECTOR(14 DOWNTO 0);COUT :OUT STD_LOGIC);</p><p> END CT32768 ;</p><p> ARCHITECTURE one OF CT32768 IS</p><p>
39、;<b> BEGIN</b></p><p> PROCESS (CLK, RST, EN )</p><p> VARIABLE Q1: STD_LOGIC_VECTOR(14 DOWNTO 0); </p><p><b> BEGIN</b></p><p> IF
40、RST ='1' THEN Q1 := (OTHERS =>'0');</p><p> ELSIF CLK'EVENT AND CLK='1' THEN</p><p> IF EN ='0' THEN</p><p> IF Q1 <32767 THEN Q1 := Q1
41、+1;COUT<='0';</p><p> ELSE Q1 := (OTHERS =>'0');COUT<='1'; END IF;</p><p><b> END IF;</b></p><p><b> END IF; </b></p
42、><p><b> Q <= Q1; </b></p><p><b> END one ;</b></p><p> 定時部分由一個二選一數(shù)據(jù)選擇器和一個輸出選擇器符合而成</p><p> ENTITY c2b4 IS</p><p> PORT (a,b,s
43、1,s2: IN BIT;</p><p> Y : OUT BIT );</p><p> END ENTITY c2b4;</p><p> ARCHITECTURE one OF c2b4 IS</p><p><b> BEGIN</b></p><p> PROCESS (a,
44、b,s1,s2)</p><p><b> BEGIN</b></p><p> IF s1 = '0'and s2 = '1'THEN Y <= b ; ELSE Y <= a ;</p><p><b> END IF;</b></p><p>
45、 END PROCESS;</p><p> END ARCHITECTURE one ;</p><p> 鬧鐘部分組成與時鐘部分選擇器件一樣</p><p><b> 數(shù)碼管輸出選擇部分</b></p><p> LIBRARY IEEE;</p><p> USE IEEE.ST
46、D_LOGIC_1164.ALL;</p><p> USE IEEE.STD_LOGIC_UNSIGNED.ALL;</p><p> ENTITY xz2to1 IS</p><p> PORT (a,b: IN STD_LOGIC_VECTOR(3 DOWNTO 0);</p><p> s: IN STD_LOGIC;<
47、/p><p> Y : OUT STD_LOGIC_VECTOR(3 DOWNTO 0);</p><p> ALARM:OUT STD_LOGIC);</p><p> END ENTITY xz2to1;</p><p> ARCHITECTURE one OF xz2to1 IS</p><p><b&
48、gt; BEGIN</b></p><p> PROCESS (a,b,s)</p><p><b> BEGIN</b></p><p> IF s = '0' THEN Y <= a ; ELSE Y <= b ;</p><p><b> END IF;&
49、lt;/b></p><p> IF a=b then ALARM <='1';ELSE ALARM <='0';</p><p><b> END IF;</b></p><p> END PROCESS;</p><p> END ARCHITECTURE o
50、ne ;</p><p> 軟件設(shè)計平臺:Quartus2 </p><p><b> 系統(tǒng)測試</b></p><p> 1、把軟件下載到硬件電路,選擇模式1,選擇時鐘輸出顯示管,觀察24小時時鐘的正確性。</p><p> 2、選擇定時功能,任意調(diào)整時間,檢測可行性。</p><p>
51、; 3、選擇數(shù)碼管輸出鬧鐘時間,調(diào)整鬧鐘為10:20:00 返回定時 定在10:19:00 讓時鐘功能運行,看起鬧鐘功能是否可行。</p><p><b> 結(jié)論</b></p><p> 可在輸入362478HZ的周期脈沖時候,從00:00:00計時到23:59:59,可在設(shè)定鬧鐘時間響鈴,可任意設(shè)定時間,完全成功。</p><p>&
溫馨提示
- 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- eda鬧鐘課程設(shè)計
- eda課程設(shè)計---數(shù)字時鐘(鬧鐘)
- 數(shù)字鬧鐘系統(tǒng)eda課程設(shè)計
- eda技術(shù)課程設(shè)計---鬧鐘系統(tǒng)設(shè)計
- eda技術(shù)課程設(shè)計鬧鐘系統(tǒng)設(shè)計
- eda技術(shù)課程設(shè)計--鬧鐘系統(tǒng)
- eda課程設(shè)計--eda課程設(shè)計實驗報告
- eda課程設(shè)計-- eda與數(shù)字系統(tǒng)課程設(shè)計
- eda課程設(shè)計
- eda課程設(shè)計
- eda課程設(shè)計
- eda課程設(shè)計報告
- eda課程設(shè)計題庫
- eda綜合課程設(shè)計
- eda課程設(shè)計報告
- eda課程設(shè)計--秒表設(shè)計
- eda課程設(shè)計報告
- eda課程設(shè)計報告
- 數(shù)字鬧鐘課程設(shè)計報告
- eda課程設(shè)計--數(shù)字秒表設(shè)計
評論
0/150
提交評論