




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領
文檔簡介
1、數(shù)字秒表設計系別:電子通信工程系 專業(yè):電子信息工程 班級: 學號: 姓名:數(shù)字秒表(基于 verilong 語言編程)課程設計一、設計要求用 verilong 語言編寫程序,結(jié)合實際電路,設計一個4 位 LED 數(shù)碼顯示 “秒表 ” ,顯示時間為 99.900.0 秒, 每秒自動減一, 精度為 0.1 。 另設計一個 “開始 ”按鍵和一個 “復位 ”按鍵。 再增加一個 “暫停 ”按鍵。按鍵說明:按 “開始 ”按鍵,開始計數(shù),數(shù)碼管顯示從99.9 開始每秒自動減一;按 “復位 ”按鍵, 系統(tǒng)復位, 數(shù)碼管顯示99.9 ; 按 “暫停 ”按鍵, 系統(tǒng)暫停計數(shù), 數(shù)碼管顯示當時的計數(shù)。二、設計目的
2、1、 通過本次課程設計加深對 verilong 語言課程的全面認識、 復習和掌握, 對 EPM7064 芯片的應用達到進一步的了解。2、 掌握定時器、外部中斷的設置和編程原理。3、 通過此次課程設計能夠?qū)④浻布Y(jié)合起來,對程序進行編輯, 調(diào)試。使其能夠通過電腦下載到芯片,正常工作。4、實際操作Quartus II 軟件,復習鞏固以前所學知識。三、總體設計本秒表系統(tǒng)具有復位、 暫停、 秒表計時等功能。 clk 為系統(tǒng)工作時鐘, 采用 Altera DE2 上的 50M 時鐘信號,經(jīng)過分頻器產(chǎn)生秒表計時周期為 0.01s 的時鐘,再經(jīng)過計數(shù)器,分別 對秒表的百分位、 十分位、秒、秒十位、 分、 分
3、十位進行計數(shù)。 onoff 為啟動/暫??刂菩盘?,當它為 0 時,啟動計時,當它為 1 時,計時暫停。 clr 為復位信號,當該信號有效時,計數(shù) 器和譯碼清零,此時數(shù)碼管顯示輸出為 00 : 00 : 00。在總體電路圖中,根據(jù)設計要求,需 要兩個輸入控制信號onoff 和 clr 。由于開發(fā)板上除了撥動開關就是瞬時的按鍵開關,且按鍵開關平時都呈高電平,按一下為低電平。故在實際測試時采用了撥動開關SW0 來控制秒表的啟動 /暫停,通過KEY0 來控制秒表的清零。四、設計思路描述該實驗要求進行計時并在數(shù)碼管上顯示時間, 通過相關軟件Quartus II 編譯, 利用 JTAG下載電路到核心芯片,
4、驅(qū)動硬件工作。 Altera_EPM7064(84PIN) 有四個引腳GCLK1(83腳),GCLRn(1 腳),OE1(84 腳),OE2(2 腳)。GCLK1 是全局時鐘,GCLRn(1 腳是全局清零,OE1(84 腳),OE2(2腳)是全局使能實現(xiàn)開始”按鍵的功能;實現(xiàn) 清零(復位)”按鍵的功能;做為時鐘信號 CLK 輸入的入口地址。 可將開關設計與此, 其優(yōu)勢在在于到達延遲時間相等。 其中 “開 始”按鍵當開關由 1 撥向0(由上向下?lián)埽r開始計時;“清零(復位) ”按鍵當開關由 1 撥向 0(由上向下?lián)埽r數(shù)碼管清零(復位),此時若再撥 “開始 ”按鍵則又可重新開始計時。1) 電源部
5、分需要并聯(lián)四個電容,以達到濾波作用,獲得實驗所需的電壓; 2) 利用三極管分別連接LED 數(shù)碼管和 EPM7064, 起到放大(電流)作用;3) 本實驗時鐘信號的產(chǎn)生有晶振直接提供,同時由編寫的子程序決定輸出頻率; 4) 芯片所需程序由計算機編譯,采用 Quartus II 軟件,編譯調(diào)試無誤后,進行下載; 5) IDI 、 TMS 、 TCK、 TDO 是 JTAG 的標準線。用來實現(xiàn)連接芯片,實現(xiàn)下載功能。五、原理圖跟據(jù)數(shù)字秒表的原理圖如圖一所示,為設計項目選定Cyclongll系列中的 EP2c35F672C6 器件,鎖定頂層設計中各端口所對應的引腳號,并編譯通過。然后對器件 編程,使用
6、 USB-Blaste 下載電纜把項目以在線配置的方式下載到Altera DE2 實驗板的EP2C35F672C6 器件中。該數(shù)字式秒表具有清零功能,通過 KEY0來控制,能夠在計時過 程中隨時清零。用SW0鍵來控制鎖存/計時,能在計時過程中通過按 SW0鍵,SW0撥動開 關打上時計時暫停,打下時仍繼續(xù)。實驗證明該秒表工作正常,基本上已達到了預期的設計 要求。LJ- la ir UJ ? T- J. rrLrELr ErLL-£LrEeltrsl X* rkil 一.二-Lfnl - - -:rF LA _c V ? w* 注 產(chǎn)產(chǎn)Q5號Euyh a: -SJ-2W* 7 J J 3
7、 J "! J -J .J- -k- J El Ik IE k K K K k K科.口JUu uUf JU3JUUU圖一、數(shù)字秒表原理圖六、PCBS分頻器CLKGEN進彳T 60萬分頻后,得到 言編程,編譯無誤通過后創(chuàng)建默認文件符號module clock(clk,key,dig,seg);input clk;input1:0 key;output7:0 dig;output7:0 seg;reg7:0 seg_r;reg7:0 dig_r;reg3:0 disp_dat;reg24:0count;reg15:0hour;圖二、數(shù)字秒表PCB圖七、系統(tǒng)軟件設計在設計電路時,要遵循從
8、上到下的設計原則。首先從系統(tǒng)設計入手, 在頂層進行功能劃分和結(jié)構(gòu)設計,頂層模塊的每個層次模塊均可完成一個較為獨立的功能,次模塊在調(diào)試成功后可生成一個默認符號,以供上一層模塊調(diào)用。本系統(tǒng)由4個模塊組成,分別是分頻電路模塊、模10計數(shù)模塊和動態(tài)譯碼顯示模塊。本設計最小計時單位為0.1s ,設計時需獲得一個比較精確的10Hz (周期為0.1s)的計時脈沖。由于最終的設計結(jié)果要下載到可編程邏輯 器件中測試,因此可利用 Altera DE2開發(fā)板的12M晶振時鐘。將12M時鐘信號CLK送到10Hz的頻率由 NEWCLK 輸出。采用 Verilog語CLKGEN以供上層電路調(diào)用。程序?qū)崿F(xiàn)如下:/模塊名cl
9、ock輸入時鐘輸入按鍵數(shù)碼管選擇輸出引腳數(shù)碼管段輸出引腳定義數(shù)碼管輸出寄存器定義數(shù)碼管選擇輸出寄存器定義顯示數(shù)據(jù)寄存器/定義計數(shù)寄存器定義現(xiàn)在時刻寄存器reg sec,keyen;reg1:0dout1,dout2,dout3;wire1:0key_done;assign dig = dig_r;assign seg = seg_r;/秒信號產(chǎn)生部分always (posedge clk)begincount = count + 1'b1;if(count = 25'd6000000)begincount = 25'd0;sec = sec;endend/按鍵消抖處理部
10、分assign key_done = (dout1 | dout2 | dout3);always (posedge count17)begindout1 <= key;dout2 <= dout1;dout3 <= dout2;endalways (negedge key_done0)beginkeyen = keyen;end/數(shù)碼管動態(tài)掃描顯示部分always (posedge clk)begincase(count17:15)3'd0:disp_dat = hour3:0;3'd1:disp_dat = hour7:4;3'd2:disp_da
11、t = hour11:8;3'd3:disp_dat = hour15:12;endcasecase(count17:15)/按鍵消抖輸出/定義標志位 /寄存器 /按鍵消抖輸出/輸出數(shù)碼管選擇 /輸出數(shù)碼管譯碼結(jié)果/定義clock 上升沿觸發(fā)/0.5S 到了嗎?/計數(shù)器清零/置位秒標志/將琴鍵開關轉(zhuǎn)換為乒乓開關/count17:15 大約 1ms 改變一次/選擇掃描顯示數(shù)據(jù)/秒個位/秒十位/分個位/分十位/選擇數(shù)碼管顯示位/選擇第一個數(shù)碼管顯示 /選擇第二個數(shù)碼管顯示 /選擇第三個數(shù)碼管顯示 /選擇第四個數(shù)碼管顯示3'd0:dig_r = 8'b11111110;3
12、39;d1:dig_r = 8'b11111101;3'd2:dig_r = 8'b11111011;3'd3:dig_r = 8'b11110111;endcaseend always (posedge clk) begincase(disp_dat)4'h0:seg_r =8'hc0;/顯示04'h1:seg_r =8'hf9;/顯示14'h2:seg_r =8'ha4;/顯示24'h3:seg_r =8'hb0;/顯示34'h4:seg_r =8'h99;/顯示44
13、39;h5:seg_r =8'h92;/顯示54'h6:seg_r =8'h82;/顯示64'h7:seg_r =8'hf8;/顯示74'h8:seg_r =8'h80;/顯示84'h9:seg_r =8'h90;/顯示9/4'ha:seg_r= 8'hbf;/顯示-default:seg_r = 8'hff;/不顯示endcase/if(count17:15= 3'd2)&sec)/seg_r = 8'hff;end/計時處理部分always (negedge sec or
14、 negedge key_done1)計時處理 beginif(!key_done1)/是清零鍵嗎?beginhour = 16'h0;/是,則清零endelse if(!keyen)beginhour3:0 = hour3:0 + 1'b1;/秒加 1if(hour3:0 = 4'ha)beginhour3:0 = 4'h0;hour7:4 = hour7:4 + 1'b1; / 秒的十位加一if(hour7:4 = 4'h6)beginhour7:4 = 4'h0;hour11:8 = hour11:8 + 1'b1;/ 分個
15、位加一if(hour11:8 = 4'ha)beginhour11:8 = 4'h0;hour15:12 = hour15:12 + 1'b1;/ 分十位加一if(hour15:12 = 4'h6)hour15:12 = 4'h0;endendendendendendmodule在 QuartusII 環(huán)境下,打開一個新的原理圖編輯窗口,然后調(diào)入秒表電路設計所需要的 50萬分頻器 CLKGEN 、十進制計數(shù)器 /分頻器 CNT10 (4 片),譯碼器 DISP ,以及電路需要的輸入/輸出元件。完成電路元件之間和輸出/輸入之間的連接,并通過QuartusI
16、I 的編譯八、焊接調(diào)試電路板組裝心得:收集資料,設計出電路原理圖,選擇元件型號,清點元器件的個數(shù)。測試元件,包括測電阻的阻值,根據(jù)電路圖和電路板本身的實際連通情況開始整體布局連接電路。電路板焊接心得:在設計過程中, 應該了解其難易,考慮一下焊接的難度。 如果比較難就要追求速度 (但是也要盡量焊好) ,如果簡單一點,那么在焊接的同時要考慮到焊接工藝。一般情況下,工藝方面的要求就是焊點的光滑、亮度、毛刺這幾個方面。一般不會要求電阻的方向之類的。焊接的方式:焊接前看一下元器件,了解一下它們的尺寸規(guī)格。然后從低到高開始焊接。電路板調(diào)試心得:首先,在上電源前先用萬用表測試下電源和地之間是否有短路,這樣可
17、防止可能燒壞IC 等元件。其次,測試電路板的各項功能,須從極端的角度去測試可能會出現(xiàn)的問題。再次,根據(jù)產(chǎn)品的性能要求,逐次測試其各個功能是否符合產(chǎn)品要求。最后, 調(diào)試過程中會遇到各種問題,下面一一分析:第一,電源連接不上,就要查查電源連接電路。第二,電源連接上了,卻不能工作,查其他電源是不是供電正常,然后查晶振是否工作。第三,還是工作不正常, 目測下主要元件是否有焊反、 焊錯、 短路等現(xiàn)象出現(xiàn)。 包括元件用錯了, 型號不對,元件方向反了,元件的腳有損壞、虛焊、短路等,連接線有損壞或接觸不良,電容的正負極焊反等。第四,加密 IC 焊錯了,或沒有加載相應的程序。九、性能指標測試首先,按照性能指標,
18、測試每項功能是否達到,記錄實際測試結(jié)果,分析誤差、誤差原因,以及解決辦法。 嚴格按照測試步驟: 首先認真調(diào)查測試需求和仔細分析測試任務, 然后 才有可能做好測試的準備工作, 只有對測試任務非常清楚, 測試目標極其明確的前提下, 我們才可能制定出切實可行的測試計劃。明確測試目標, 詳盡測試計劃在對測試需求充分了解的基礎上,制定盡可能詳細的測試計劃,對測試的實施是大有裨益的。十、總結(jié)在 QuartusII 開發(fā)環(huán)境下,采用自頂向下的設計方法有利于在早期發(fā)現(xiàn)結(jié)構(gòu)設計中的錯誤, 避免不必要的重復設計。 再結(jié)合基于 FPGA 的 “在系統(tǒng) ”可編程實驗板, 輕輕松松就能實現(xiàn)各種電子產(chǎn)品的設計,現(xiàn)場觀察實驗測試結(jié)果。大大縮短了產(chǎn)品的設計周期和調(diào)試周期,提高了設計的可靠性和成功率,充分體現(xiàn)了可編程邏輯器件在數(shù)字電路設計中的優(yōu)越性。十一、心得體會兩周時間的課程設計,終于達到了數(shù)字秒表系統(tǒng)的要求,盡管還不是十分完美,但從心底里說,還是很高興的。通過以上步驟就可以完成對數(shù)字秒表的過程設計。這次設計,我克服了很多關于設計問題方面的困難,使我對Protel DXP2004 軟件的使用
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 美術作品鑒賞與藝術史教育計劃
- 學生社團活動的組織方案計劃
- 深入分析倉庫物流成本的控制計劃
- 2025光伏低壓并網(wǎng)開關
- 班級學習環(huán)境的優(yōu)化計劃
- 渠道管理提升方案計劃
- 保安工作總結(jié)計劃電力行業(yè)保安工作的設備檢修
- 高效的英語學習方法與實踐探索
- 湖南2025年01月湖南省保靖縣事業(yè)單位2025年公開引進16名急需緊缺人才筆試歷年典型考題(歷年真題考點)解題思路附帶答案詳解
- 浙江2025年02月舟山市水利局招考1名勞務派遣人員筆試歷年典型考題(歷年真題考點)解題思路附帶答案詳解
- DL5000-火力發(fā)電廠設計技術規(guī)程
- 《醫(yī)德醫(yī)風學習記錄》
- 羊水穿刺的委托書
- 爆破飛石控制措施
- 2024年新疆生產(chǎn)建設兵團興新職業(yè)技術學院單招職業(yè)適應性測試題庫必考題
- (高清版)JTGT M72-01-2017 公路隧道養(yǎng)護工程預算定額
- DZ∕T 0130.6-2006 地質(zhì)礦產(chǎn)實驗室測試質(zhì)量管理規(guī)范 第6部分:水樣分析(正式版)
- 2024年遼寧生態(tài)工程職業(yè)學院單招職業(yè)適應性測試題庫一套
- 摩托車科目一題庫-共400題(附答案)
- 第一節(jié)-原核生物與真核生物DNA的復制課件
- 第四單元素養(yǎng)評價卷(單元測試)2023-2024學年統(tǒng)編版語文一年級下冊
評論
0/150
提交評論