freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于fpga的數(shù)字時鐘設(shè)計畢業(yè)設(shè)計論文-資料下載頁

2025-02-26 09:22本頁面

【導讀】計數(shù);具有校對功能。本設(shè)計采用EDA技術(shù),以硬件描述語言VerilogHDL為系統(tǒng)邏。各個基本模塊共同構(gòu)建了一個基于FPGA的數(shù)字鐘。系統(tǒng)由時鐘模塊、控制模塊、計時模塊、數(shù)據(jù)譯碼模塊、顯示以及組成。顯示,按鍵進行校準,整點報時,鬧鐘功能。

  

【正文】 4。 //中音 5 的分頻系數(shù)值 439。h7:beep_count_end = 1639。h6a88。 //中音 6 的分頻系 數(shù)值 439。h8:beep_count_end = 1639。h8637。 //中音 4 的分頻系數(shù)值 default:beep_count_end = 1639。hffff。 //其他情況無聲 endcase else if (!clktime_en) begin case(count1[8:5]) //鬧鐘嘀嘀嘀聲內(nèi)容 439。h0,439。h2,439。h6,439。h8:beep_count_end = 1639。h2f74。 //高音 7 的分頻系數(shù)值 default:beep_count_end = 1639。hffff。 //其他情況不出聲 endcase end else beep_count_end = 1639。hffff。 end //鬧鈴使能控制 always @(posedge clk) begin if (!keyen[0]) //判斷鬧鈴是否有取消 clktime_en = 139。b1。 //鬧鈴響起后,需要手動關(guān)閉鬧鈴 浙江理工大 學科技與藝術(shù)學院本科畢業(yè)設(shè)計 (論文 ) 27 else if ((clktime[23:0] = hour[23:0])amp。(clktime[23:0]+10 =hour[23:0])) //鬧鈴過一點時間,自動關(guān)閉。 clktime_en = 139。b0。 end 蜂鳴器模塊仿真 功能仿真,記錄波形圖: 圖 蜂鳴器 模塊仿真圖 通過上圖可以看出來,當 hour 與 clktime 相等時,鬧鈴被觸發(fā),經(jīng)過一段時間后,鬧鈴停止工作,設(shè)計滿足要求。 顯示模塊實現(xiàn) 顯示模塊描述 此設(shè)計中的 LED 七段數(shù)碼管 顯示模塊主要顯示時間的時、分、秒信息 ,數(shù)碼管為共陽的。 在此設(shè)計中占非常重要的地位,它是確保時間能直觀呈現(xiàn)的橋梁。在設(shè)計過程中,首先進行程序編寫和調(diào)試 的應該是顯示模塊。 下面輸入的端口為鬧鐘設(shè)定鍵被按下,七段數(shù)碼管會顯示鬧鐘設(shè)定情況下數(shù)碼管所對應的數(shù)字。正常時間情況、鬧鐘設(shè)定以及查看鬧鐘所設(shè)定好的時間都是同樣的原理,當他們被按下數(shù)碼管會顯示對應的模式相應的數(shù)字。 圖 顯示模塊 圖 顯示模塊實現(xiàn) //數(shù)碼管顯示內(nèi)容 28 always @(posedge clk) begin case({keyen[0],count1[3:1]}) //選擇掃描顯示數(shù)據(jù) 439。d0:disp_dat = clktime[3:0]。 //秒個位 439。d1:disp_dat = clktime[7:4]。 //秒十位 439。d2:disp_dat = 439。ha。 //顯示 439。d3:disp_dat = clktime[11:8]。 //分個位 439。d4:disp_dat = clktime[15:12]。 //分十位 439。d5:disp_dat = 439。ha。 //顯示 439。d6:disp_dat = clktime[19:16]。 //時個位 439。d7:disp_dat = clktime[23:20]。 //時十位 439。d8:disp_dat = hour[3:0]。 //秒個位 439。d9:disp_dat = hour[7:4]。 //秒十位 439。d10:disp_dat = 439。ha。 //顯示 439。d11:disp_dat = hour[11:8]。 //分個位 439。d12:disp_dat = hour[15:12]。 //分十位 439。d13:disp_dat = 439。ha。 //顯示 439。d14:disp_dat = hour[19:16]。 //時個位 439。d15:disp_dat = hour[23:20]。 //時十位 default:disp_dat = 439。ha。 //顯示 endcase //數(shù)碼管選擇 case(count1[3:1]) //選擇數(shù)碼管顯示位 339。d0:dig_r = 839。b11111110。 //選擇第一個數(shù)碼管顯示 339。d1:dig_r = 839。b11111101。 //選擇第二個數(shù)碼 管顯示 339。d2:dig_r = 839。b11111011。 //選擇第三個數(shù)碼管顯示 339。d3:dig_r = 839。b11110111。 //選擇第四個數(shù)碼管顯示 339。d4:dig_r = 839。b11101111。 //選擇第五個數(shù)碼管顯示 339。d5:dig_r = 839。b11011111。 //選擇第六個數(shù)碼管顯示 339。d6:dig_r = 839。b10111111。 //選擇第七個數(shù)碼管顯示 339。d7:dig_r = 839。b01111111。 //選擇第八個數(shù)碼管顯示 endcase end //數(shù)碼管顯示 always @(posedge clk) begin case(disp_dat) 439。h0:seg_r = 839。hc0。 //顯示 0 439。h1:seg_r = 839。hf9。 //顯示 1 439。h2:seg_r = 839。ha4。 //顯示 2 浙江理工大 學科技與藝術(shù)學院本科畢業(yè)設(shè)計 (論文 ) 29 439。h3:seg_r = 839。hb0。 //顯示 3 439。h4:seg_r = 839。h99。 //顯示 4 439。h5:seg_r = 839。h92。 //顯示 5 439。h6:seg_r = 839。h82。 //顯示 6 439。h7:seg_r = 839。hf8。 //顯示 7 439。h8:seg_r = 839。h80。 //顯示 8 439。h9:seg_r = 839。h90。 //顯示 9 439。ha:seg_r = 839。hbf。 //顯示 default:seg_r = 839。hff。 //不顯示 endcase if((count1[3:1]== 339。d2)amp。sec) seg_r = 839。hff。 End 顯示模塊仿真 編譯程序,進行功能仿真,記錄仿真圖形: 圖 顯示模塊仿真 圖 通過上面的圖可以知道, LED 數(shù)碼管是通過掃描的方式實現(xiàn)數(shù)據(jù)更新,通過 dig,seg 寄存器的數(shù)據(jù)可以知道,數(shù)據(jù)能正常顯示,滿足設(shè)計要求。 30 第五章 系統(tǒng)調(diào)試及運行結(jié)果分析 硬件調(diào)試 在軟件聯(lián)機調(diào)試之前,首先要確定硬件是否完全正確。檢查方面主要包括: ( 1) PC 機的接口和核心板上的 JTAG 下載口是否連接正確; ( 2) 蜂鳴器的電路是否為通路; ( 3)檢查接地、電源線是否連接正確; ( 4)用示波器檢測核心板的各個引腳是否有信號輸出; ( 5) LED 七段數(shù)碼管顯示正常。 引腳分布 如下 表 51: 表 51 引腳分布圖 : 信號 引腳 說明 信號 引腳 說明 seg[0] 169 數(shù)碼管斷信號選擇 dig[0] 160 數(shù)碼管片選信號控制 seg[1] 170 dig[1] 159 seg[2] 167 dig[2] 162 seg[3] 168 dig[3] 161 seg[4] 165 dig[4] 215 seg[5] 166 dig[5] 216 seg[6] 163 dig[6] 213 seg[7] 164 dig[7] 214 key[0] 121 秒加 1 控制 clk 28 時鐘信號 key[1] 122 分加 1 控制 Beep 175 蜂鳴器信號 key[2] 123 時加 1 控制 key[3] 124 鬧鐘控制 key[4] 143 時間校準控制 浙江理工大 學科技與藝術(shù)學院本科畢業(yè)設(shè)計 (論文 ) 31 軟件調(diào)試 在確定好硬件系統(tǒng)正確之后,我對本設(shè)計進行分模塊的軟件調(diào)試。功能模塊先后調(diào)試順序為:顯示模塊 → 時間模塊 → 鍵盤模塊 → 時間設(shè)定及其顯示模塊 → 鬧鈴、整點報時設(shè)定及其顯示模塊。每完成一個模塊就與前一個已完成的模塊結(jié)合起來調(diào)試,直至實現(xiàn)相應功能,再編寫下一模塊程序。在與主程序銜接時,主程序和各子程序也需作相應的改動,以便與子程序更好的銜接,特別是顯示子程序需作較大改動,以便對不同內(nèi)容進行顯示。 軟件編譯后的結(jié)果: 圖 軟件編譯結(jié)果圖 通過上圖 可以知道,整個設(shè)計值用了 383 個邏輯單元,占用很少的資源。 調(diào)試過程及結(jié)果 調(diào)試過程按照:顯示模塊 → 時間模塊 → 鍵盤模塊 → 時間設(shè)定及其顯示模塊 → 鬧鈴、 32 整 點報時設(shè)定及其顯示模塊的順序進行調(diào)試。 ( 1)顯示模塊調(diào)試 本系統(tǒng)功能完整運行離不開正確顯示,所以顯示模塊的實現(xiàn)非常重要,在聯(lián)機調(diào)試第一步就要確定系統(tǒng)的顯示是否能夠正常運行。將需要顯示的內(nèi)容編寫在程序內(nèi),單獨得進行仿真。此模塊調(diào)試結(jié)果如圖 41 所示: 圖 顯示模塊調(diào)試圖 ( 2)時間系統(tǒng)模塊調(diào)試 確定系統(tǒng)顯示成功后,進行時間系統(tǒng)的調(diào)試。時間系統(tǒng)需要實現(xiàn)時、分、秒的正確走時。顯示結(jié)果為時、分、秒 ,其中秒鐘可以正常走動 。此模塊調(diào)試結(jié)果如圖 42 所示: 圖 時間系統(tǒng)模塊調(diào)試圖 ( 3)按鍵模塊調(diào)試 key1 按鍵被按下進入校時狀態(tài), key2 按鍵被按下進入調(diào)鬧鐘狀態(tài)(在鬧鈴響時按此鍵能屏蔽鬧鈴音),在兩個不同狀態(tài)下, key key key5 三個按鍵的功能是相同的,當被按下時,時、分、秒的數(shù)值加 1。(由于圖片限制校時狀態(tài)下和鬧鐘設(shè)定類似不予以截圖。) 浙江理工大 學科技與藝術(shù)學院本科畢業(yè)設(shè)計 (論文 ) 33 圖 時間 調(diào)整 /鬧鐘設(shè)定 模塊調(diào)試圖 調(diào)試注意事項 軟件設(shè)計時,需要確定好軟件設(shè)計的思路,即先確定 各個 功能 需要實現(xiàn)的先后 ,再將各功能模塊單獨進行編寫調(diào)試,待各模塊功能完善后,再進行總體聯(lián)合調(diào)試。調(diào)試過程中出現(xiàn)了一些問題,并一一解決: ( 1)在進行系統(tǒng)聯(lián) 機調(diào)試時,要注意電源是否接通, PC 機的接口和核心板上的JTAG 下載口是否連接正確。 確定將未使用的引腳設(shè)置為三態(tài)輸入 ,否則 可能會損壞芯片 。 ( 2)顯示模塊正確調(diào)試之后,進行時鐘系統(tǒng)的調(diào)試過程中,出現(xiàn)時間信息并沒有顯示在屏幕上,而在對應時間信息的位置上顯示的是 “”。出現(xiàn)此問題時候,首先對硬件進行再次檢查,用示波器檢查 引腳兩端是否有信號的輸入輸出 。結(jié)果發(fā)現(xiàn)硬件電路連接正確,問題出現(xiàn)在 引腳設(shè)置的 方面。 在設(shè)定引腳時,沒有選擇正確的輸出引腳。通過查找書本 ,修改 輸出引腳 ,解決了這個問題。 ( 3)時鐘模塊時,出現(xiàn) 秒鐘走的 過快的現(xiàn)象。最終發(fā)現(xiàn)是分頻程序中沒有正確的對時鐘脈沖信號進行正確的分頻 。 通過在網(wǎng)絡(luò)資源和書籍的學習正確的改善了這個問題。 ( 4) 鍵盤調(diào)整時間程序中,出現(xiàn)了無法正常調(diào)時情況,按鍵盤后,時間信息沒有改變 或者改變過多 。經(jīng)過檢查,找到原因是 沒有給按鍵進行按鍵去抖動 。這說明在編寫程序時候要充分了解各芯片內(nèi)容資料,減少編寫小錯誤引起對整個程序造成的影響。 ( 5)鬧鐘報時和整點報時蜂鳴時間問題。鬧鐘報時中,如果鬧鐘時間到就會鬧鈴 1分鐘,考慮到實際生活中,鬧鐘都是可以手動關(guān)閉的,于是設(shè)定了一個鬧鐘開關(guān)鍵,為了減少系統(tǒng)硬件 的繁雜,當系統(tǒng)時間到達鬧鈴時間和整點報時的時間,蜂鳴器才會響起。 34 第六章 總結(jié)和展望 總結(jié) 在 FPGA 上設(shè)計和調(diào)試都需要耐心,時鐘設(shè)計在生活中無處不在,設(shè)計的過程要考慮到應用的習慣,設(shè)計更人性化的體驗,才會是一個好的設(shè)計。在 Verilog HDL語言的學習上還存在一些問題,沒有深入的學習,對于有些語法錯誤,還需要仔細的查找。如果將這個數(shù)字時鐘應用于現(xiàn)實生活中,還存在些許的問題。例如按鍵太多,操作起來沒那么的方便等等。 展望 針對數(shù)字時鐘的設(shè)計,通過以上的驗證,我們可以知道,對數(shù)字時鐘來說,其實占用很少邏輯資 源,也就意味著如果一點制作成 SOC 的話,成本會非常的低,所以基于這點,整個模塊完全可以依附在其他功能產(chǎn)品(如 CPU 內(nèi)部)上,給整個產(chǎn)品增加的優(yōu)勢。 浙江理工大 學科技與藝術(shù)學院本科畢業(yè)設(shè)計 (論文 ) 35 參考文獻 [1]. 劉
點擊復制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1