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

下載本文檔

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

文檔簡介

1、鄭州航空工業(yè)管理學(xué)院eda 課程設(shè)計報告題 目數(shù)字秒表姓名學(xué)號指導(dǎo)教師二一 一 年六 月二十三日2 一設(shè)計任務(wù)1.1 基本功能 :a精度達到 0.1 秒。b有一個開始和暫停計時按鍵、一個加減計時按鍵、 一個復(fù)位按鍵。1.2 其它功能 :有倒計時功能1.3 其他要求:a系統(tǒng)時鐘采用12 mhz 有源晶振;b. 主芯片采用 cpld 器件,型號為 altera 的 epm7064sl-44;c采用數(shù)碼管顯示。二設(shè)計方案2.1 實現(xiàn)方法:a先根據(jù)所要實現(xiàn)的基本要求和基本功能,用protel2004 軟件畫出其原理圖;b畫出 pcb 版(老師代做 ),設(shè)計程序并進行仿真,成功后將pcb板做出;c將所需

2、器件購買齊全,即可進行焊接測試,注意由于焊接難度較大,焊接時一定要仔細認真;d. 將設(shè)計好的 eda 程序,進行編譯仿真測試, 成功后,下載到芯片上即可, 觀察是否為其所要求的功能,并進行調(diào)試,達到要求為止。3 2.2 電路原理圖電路原理如圖(一)所示:圖 (一) 2.3 所需器件a.altera 的 epm7064sl-44cpld 芯片一個b.有源晶振一個c.插針一排d.四位數(shù)碼管一個e.四腿插槽一個f.c8550 三極管四個g.按鍵三個h.220歐電阻 10個i.1k 電阻四個 7 個4 j.導(dǎo)線兩根2.4 工作原理將晶振分頻,產(chǎn)生時鐘信號,每次0.05 秒,則每隔 0.1 秒產(chǎn)生時鐘進

3、位,將產(chǎn)生的信號通過數(shù)碼管進行譯碼顯示,進行動態(tài)掃描。根據(jù)幾個按鍵按下與否判斷是否暫停,倒計時,秒表顯示。 整個電路有芯片程序控制,外圍按鍵間接控制,數(shù)碼顯示,下載鏈接部分組成。三設(shè)計程序3.1 系統(tǒng)組成框圖系統(tǒng)組成框圖如圖(二)所示: 3.2 程序流程圖數(shù)字秒表計時控制電路控制狀態(tài)機計時電路顯示電路分頻電路計數(shù)器六進制計數(shù)器掃描電路段譯碼器十進制計數(shù)器圖(二)5 程序流程圖如圖(三)所示:圖(三)3.3 設(shè)計程序及主要部分說明設(shè)計程序如附(一)所示:開始產(chǎn)生時鐘信號復(fù)位鍵按下了嗎y n 暫停鍵按下了嗎y n 是正計時嗎是倒計時嗎秒表正計時秒表倒計時結(jié)束y y n n 6 3.4 管腳分配管腳

4、分配如表(一)所示:表(一)3.5 部分仿真圖形部分仿真圖如圖(四)所示:圖(四)7 四總結(jié)及心得1. 總結(jié)通過這次課程設(shè)計讓我對eda 這門課有了更深刻的了解,對電路板的焊接有了一定的經(jīng)驗。 但是在制作的過程中困難重重現(xiàn)總結(jié)如下:1.電路板部分管腳較為密集復(fù)雜,比較難以準(zhǔn)確焊接,由于細心不夠,我組曾經(jīng)將芯片座的兩根導(dǎo)線誤短路,造成下載不成功,后經(jīng)萬用表仔細排查,找出原因,最終問題得以解決;2.在程序編寫時,先要在心中規(guī)劃一個大概流程,然后編寫,經(jīng)過與其他同學(xué)多次合作修改最終編譯而成,在如何編寫程序方面收獲頗多;2心得體會在這次的課程設(shè)計中不僅檢驗了我所學(xué)習(xí)的知識,也培養(yǎng)了我如何去把握一件事情

5、, 如何去做一件事情, 又如何完成一件事情。在設(shè)計過程中,與同學(xué)分工設(shè)計,和同學(xué)們相互探討,相互學(xué)習(xí),相互監(jiān)督。學(xué)會了合作,學(xué)會了運籌帷幄,學(xué)會了寬容,學(xué)會了理解,也學(xué)會了做人與處世。課程設(shè)計是我們專業(yè)課程知識綜合應(yīng)用的實踐訓(xùn)練,著是我們邁向社會,從事職業(yè)工作前一個必不少的過程”千里之行始于足下”, 通過這次課程設(shè)計,我深深體會到這句千古名言的真正含義我今天認真的進行課程設(shè)計,學(xué)會腳踏實地邁開這一步, 就是為明天能穩(wěn)健地在社會大潮中奔跑打下堅實的基礎(chǔ)8 這次 eda課程設(shè)計,可以說是苦多于甜,但是可以學(xué)的到很多很多的東西, 同時不僅可以鞏固以前所學(xué)過的知識,而且學(xué)到了很多在書本上所沒有學(xué)到過的

6、知識。通過這次設(shè)計,進一步加深了對eda的了解,讓我對它有了更加濃厚的興趣。特別是當(dāng)程序編寫調(diào)試成功時,心里特別的開心。但在編寫時,有錯誤,在細心的檢查下,終于找出了錯誤和警告,排除困難后,程序編譯就通過了,心里終于舒了一口氣。在波形仿真時,也遇到了一點困難, 想要的結(jié)果不能在波形上得到正確的顯示。通過這次課程設(shè)計使我懂得了理論與實際相結(jié)合是很重要的,只有理論知識是遠遠不夠的,只有把所學(xué)的理論知識與實踐相結(jié)合起來,從理論中得出結(jié)論,才能真正為社會服務(wù),從而提高自己的實際動手能力和獨立思考的能力。在設(shè)計的過程中遇到問題, 可以說得是困難重重,這畢竟第一次做的,難免會遇到過各種各樣的問題,同時在設(shè)

7、計的過程中發(fā)現(xiàn)了自己的不足之處,對以前所學(xué)過的知識理解得不夠深刻,掌握得不夠牢固。總的來說,這次設(shè)計的數(shù)字秒表還是比較成功的,在設(shè)計中遇到了很多問題,最后在同學(xué)的幫助下,終于游逆而解,有點小小的成就感,終于覺得平時所學(xué)的知識有了實用的價值,達到了理論與實際相結(jié)合的目的,不僅學(xué)到了不少知識,而且鍛煉了自己的能力,使自己對以后的路有了更加清楚的認識,同時,對未來有了更多的信心。最后,對給過我?guī)椭乃型瑢W(xué)再次表示忠心的感謝!9 附(一):設(shè)計程序及主要部分說明:module miao_clock(clk,key,dig,seg); /模塊名 miaoclock input clk; /輸入時鐘in

8、put2:0 key; /輸入按鍵output3:0 dig; /數(shù)碼管選擇輸出引腳output7:0 seg; /數(shù)碼管段輸出引腳reg7:0 seg_r; /定義數(shù)碼管輸出寄存器reg3:0 dig_r; /定義數(shù)碼管選擇輸出寄存器reg3:0 disp_dat; /定義顯示數(shù)據(jù)寄存器reg17:0count; /定義計數(shù)寄存器reg11:0hour; /定義現(xiàn)在時刻寄存器reg sec,keyen1,keyen2; /定義標(biāo)志位reg2:0dout1,dout2,dout3; /寄存器wire2:0key_done; /按鍵消抖輸出assign dig = dig_r; /輸出數(shù)碼管選擇

9、assign seg = seg_r; /輸出數(shù)碼管譯碼結(jié)果/秒信號產(chǎn)生部分always (posedge clk) /定義 clock 上升沿觸發(fā)begin count = count + 1b1; if(count = 18d600000) /0.05s到了嗎?begin count = 18d0; /計數(shù)器清零sec = sec; /置位秒標(biāo)志end end /按鍵消抖處理部分assign key_done = (dout1 | dout2 | dout3); /按鍵消抖輸出always (posedge count10) begin dout1 = key; dout2 = dout1

10、; dout3 = dout2; end always (negedge key_done1) begin keyen1 = keyen1; /將琴鍵開關(guān)轉(zhuǎn)換為乒乓開關(guān)10 end always (negedge key_done2) begin keyen2 = keyen2; /將琴鍵開關(guān)轉(zhuǎn)換為乒乓開關(guān)end /數(shù)碼管動態(tài)掃描顯示部分always (posedge clk) /count14:13大約 1ms改變一次begin case(count14:13) /選擇掃描顯示數(shù)據(jù)2d0:disp_dat = hour3:0; /0.1 秒顯示位2d1:disp_dat = 4ha; /-

11、2d2:disp_dat = hour7:4; /秒個位顯示位2d3:disp_dat = hour11:8; /秒十位顯示位endcase case(count14:13) /選擇數(shù)碼管顯示位2d0:dig_r = 8b1110; /選擇第一個數(shù)碼管顯示2d1:dig_r = 8b1101; /選擇第二個數(shù)碼管顯示2d2:dig_r = 8b1011; /選擇第三個數(shù)碼管顯示2d3:dig_r = 8b0111; /選擇第四個數(shù)碼管顯示endcase end always (posedge clk) begin case(disp_dat) 4h0:seg_r = 8hc0; /顯示 0 4

12、h1:seg_r = 8hf9; /顯示 1 4h2:seg_r = 8ha4; /顯示 2 4h3:seg_r = 8hb0; /顯示 3 4h4:seg_r = 8h99; /顯示 4 4h5:seg_r = 8h92; /顯示 5 4h6:seg_r = 8h82; /顯示 6 4h7:seg_r = 8hf8; /顯示 7 4h8:seg_r = 8h80; /顯示 8 4h9:seg_r = 8h90; /顯示 9 4ha:seg_r = 8hbf; /顯示- default:seg_r = 8hff; /不顯示endcase /if(count17:15= 3d1)&sec

13、) /seg_r = 8hff; end 11 /計時處理部分always (negedge sec or negedge key_done0)/計時處理begin if(!key_done0) /是清零鍵嗎?begin hour = 12h000; /是,則清零end else if(!keyen1) begin if(!keyen2) begin hour3:0 = hour3:0 + 1b1; /0.1秒加一if(hour3:0 = 4ha) begin hour3:0 = 4hf; hour7:4 = hour7:4 + 1b1; /秒的個位加一if(hour7:4 = 4ha) begin hour7:4 = 4hf; hour11:8 = hour11:8 + 1b1;/秒的十位加一if(hour11:8 = 4ha) begin hour11:0 = 12hfff; end end end end else begin hour3:0 = hour3:0 - 1b1; /0.1秒減一if(hour3:0

溫馨提示

  • 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)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論