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

正文內(nèi)容

基于8255擴展的多模式跑馬燈設(shè)計_畢業(yè)設(shè)計論文(編輯修改稿)

2025-10-02 15:41 本頁面
 

【文章內(nèi)容簡介】 寫 8 2 5 5 控 制 字讀 鍵 盤 保 存延 時 1 0 m s 消 抖再 讀 鍵 盤兩 次 鍵 值 相 同嗎 ?K 1 按 下N置 跑 馬 模 式Y(jié)K 2 按 下K 3 按 下速 度 加 1 速 度 減 1YYNNYN圖 10 主程序流程圖 — 青島理工大學(xué)通信與電子信息工程學(xué)院 — 10 關(guān) 中 斷保 護 現(xiàn) 場中 斷 次 數(shù) S p e e d ? 模 式 0 ?模 式 0 模 式 1 ?模 式 2 ?模 式 1 模 式 2. . .. . .模 式 8 ?模 式 8開 中 斷返 回 主 函 數(shù)恢 復(fù) 現(xiàn) 場 YNNNNNYYYYN圖 11 中斷子程序 流程圖 、 算法 程序的開始,先包含相應(yīng)函數(shù)的頭文件名,再定義 8255控制字、 PA 口、 PB 口以及各個參數(shù)和及各個位等。 編譯三個函數(shù),分別是 void Delay()函數(shù)、 void Led_Display()函數(shù)和 void KeyProcess()函數(shù),它們依次是延時函數(shù)、 LED 顯示函數(shù)和按鍵處理函數(shù)。 主函數(shù)中,開中斷,啟動定時器,設(shè)置 8255 的 PA、 PB 口為輸出口,并且用 while(1)函數(shù)進(jìn)行按鍵的判斷和處理。 延時函數(shù)中,使用 while()和 for(。)構(gòu)成的嵌套函數(shù)來達(dá)到延時 的目的。 LED 顯示函數(shù)中,讓 PA 口顯示高八位, PB 口顯示低八位,再使用開關(guān)函數(shù)執(zhí)行LED 不同的跑馬模式。如果 LED 滾動方向是邏輯 “1”,那么 LED 從右向左循環(huán)亮燈,如果LED 滾動方向是邏輯 “0”,那么 LED 從左向右循環(huán)亮燈。 按鍵處理函數(shù)中,如果檢測到 K1 按下,那么 LED 的滾動方向 Dirtect 和移動位數(shù)mb_Count 重新設(shè)置為初始值, LED 的滾動模式加 1,并在數(shù)碼管上顯示相應(yīng)的模式號。如果檢測到 K2 按下,那么在相應(yīng)的模式上 LED 的滾動速度加 1,如果檢測到 K3 按下,那么在相應(yīng)的模式上 LED 的滾動 速度減 1。 程序中各個參數(shù)之間都一一對應(yīng),根據(jù)要求相互呼應(yīng)。通過控制這些參數(shù)的量值來實— 青島理工大學(xué)通信與電子信息工程學(xué)院 — 11 現(xiàn)硬件仿真中多種跑馬燈的運行模式。 、 編程技巧 設(shè)計中,將 PA 口設(shè)置為顯示高八位 LED 燈, PB 口設(shè)置為顯示低八位 LED燈,要注意兩組初始值并不相同,多個函數(shù)和參數(shù)組合使用,實現(xiàn)跑馬燈的多種運行方式。 、 源程序清單 (見附錄一) 六、仿真過程綜述 用 KEIL C 將程序編寫好之后,先編譯程序,檢查程序有無錯誤。如果有錯誤就要改正,直到?jīng)]有錯誤,最后 編譯、鏈接 生成 .HEX文件,再用 PROTEUS 畫好硬件電路圖,將剛生成的 .HEX文件添加到 AT89C52中,點擊運行按鈕進(jìn)行仿真調(diào)試,在調(diào)試過程當(dāng)中通過調(diào)試的結(jié)果完善程序。仿真過程中,打開仿真開關(guān),系統(tǒng)工作在默認(rèn)的 0 模式,跑馬速度也是默認(rèn)的,當(dāng)不斷地按下按鈕 K1 時,系統(tǒng)的跑馬模式在 0~8 模式中更換;當(dāng)不斷地按下按鈕 K2時, 16 只 LED 燈的跑馬速度會在當(dāng)前運行模式下不斷地增加,直到達(dá)到最大跑馬速度;當(dāng)不斷地按下按鈕 K3 時, 16 只 LED 燈的跑馬速度會在當(dāng)前運行模式下不斷地減小,直到達(dá)到最小跑馬速度。 圖 12 仿真結(jié)果圖 — 青島理工大學(xué)通信與電子信息工程學(xué)院 — 12 七、 調(diào)試過程中的主要難點及解決思路和辦法 剛開始調(diào)試時, 我發(fā)現(xiàn)數(shù)碼管顯示不正常, LED燈沒有跑馬的運行方式,按鍵部分 KK2 和 K3 都不起作用 。 后來經(jīng)過仔細(xì)檢查源程序和同學(xué)們的講解,我找到了問題的原因所在 。因為我在主函數(shù) main()中對 AT89C52 的 P0、 P P2 和 P3 端口都賦了初值 0xFF,才導(dǎo)致這四個端口處都是高電平,從而導(dǎo)致電路工作不正常。把這一句代碼刪掉后,再進(jìn)行仿真,這時電路的各個部分工作都正常了,但是美中不足的是 16 只 LED 燈的顯示方式看起來不連貫,然后我又根據(jù)源程序更改了 8255 的 PA、 PB端口與 16 只 LED燈的連接順序,直到 16只 LED 燈的 顯示方式看起來循環(huán)連續(xù)。 八、課設(shè)結(jié)果及分析、收獲、體會和建議 、結(jié)果及分析 打開仿真開關(guān),系統(tǒng)工作在默認(rèn)的 0 模式,如果 Dirtect=1, LEDFlag=1,那么執(zhí)行語句 Led_Display(0xFFFEmb_Count), 16 只 LED 燈從右向左依次全亮;這時如果移動位數(shù)mb_Count=15,那么 Dirtect=!1=0, LEDFlag=1不變,同時 mb_Count 也變?yōu)槌跏贾?0,并且 16 只 LED燈立即全滅,然后執(zhí)行 else 中的語句 Led_Display(0x7FFFmb_Count), 16只 LED 燈從左向右依次全亮;這時如果 mb_Count=15,那么 Dirtect=!0=1, LEDFlag=!1=0,同時 mb_Count 重新變?yōu)槌跏贾?0, 然后再執(zhí)行第一個嵌套語句的 else 中的語句Led_Display(~(0x7FFFmb_Count)), 16 只 LED 燈第一個不亮,后 15 個同時全亮,接著從左向 右 LED燈依次全滅,在這一過程中,由于人眼視覺暫留原因,看不到 16 只 LED燈立即全滅接著第一個燈不亮,后 15 個同時全亮的過程;這時如果 mb_Count=15,那么Dirtect=!1=0, LEDFlag=0不變,同時 mb_Count 也變?yōu)?0,然后執(zhí)行第二個嵌套語句的 else中的語句 Led_Display(~(0xFFFEmb_Count)), 16 只 LED 燈前 15個同時全亮,最后一個不亮,接著從右向左 LED燈依次全滅,這樣就完成了一輪循環(huán),然后按上述順序再進(jìn)行第二輪、第三輪 …… 循環(huán)。 、 收獲體會 為期兩周的單片機課程設(shè)計已經(jīng)接近尾聲,回顧這兩周的課程設(shè)計,我感覺自己收獲頗豐。首先,我對單片機以及 C語言的認(rèn)識和理解水平又上升了一個臺階,并且加深了我對軟硬件結(jié)合的認(rèn)識;其次,本次課設(shè)將我們 平時學(xué)到的理論知識真正應(yīng)用到了實際應(yīng)用中去,實現(xiàn)了學(xué)與用相結(jié)合這一宗旨;最后,本次課設(shè)涉及到了對兩個軟件 KEIL C 和 PROTEUS的學(xué)習(xí),現(xiàn)在我已經(jīng)基本熟悉了這兩個仿真軟件的相關(guān)知識和操作方法。總之,從本次課設(shè)中我所收獲到的知識,雖然目前看來沒有用武之地,但是它為我們將來從事電子產(chǎn)品設(shè)計、軟件編程等工作必會奠定良好的基礎(chǔ)。 萬事開頭難,在剛開始課程設(shè)計的時候,大家都有點茫然而且都有無從下手的
點擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1