使用單片機(jī)控制數(shù)碼管顯示輸出數(shù)字 課件_第1頁(yè)
使用單片機(jī)控制數(shù)碼管顯示輸出數(shù)字 課件_第2頁(yè)
使用單片機(jī)控制數(shù)碼管顯示輸出數(shù)字 課件_第3頁(yè)
使用單片機(jī)控制數(shù)碼管顯示輸出數(shù)字 課件_第4頁(yè)
使用單片機(jī)控制數(shù)碼管顯示輸出數(shù)字 課件_第5頁(yè)
已閱讀5頁(yè),還剩7頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

模塊三——并行接口及其應(yīng)用使用單片機(jī)控制數(shù)碼管顯示輸出數(shù)字3.2使用并行接口點(diǎn)亮數(shù)碼管課堂練習(xí)通過(guò)proteus虛擬仿真,使用單片機(jī)P1口控制數(shù)碼管顯示數(shù)字53.2使用并行接口點(diǎn)亮數(shù)碼管原理圖中為數(shù)碼管連接了一個(gè)排阻,其目的是為數(shù)碼管提供點(diǎn)亮的電源,同時(shí)串聯(lián)的電阻可以保護(hù)數(shù)碼管。原件介紹排阻是一排電阻的簡(jiǎn)化形式實(shí)質(zhì)上就是多個(gè)電阻,排阻在Proteus中有兩種一種是帶有公共端的名稱(chēng)為RESPACK不帶公共端的名稱(chēng)為RX8Proteus中七段數(shù)碼管的英文名稱(chēng)為7SEG共陽(yáng)極為AN

共陰極為CATRX8RESPACK3.2使用并行接口點(diǎn)亮數(shù)碼管仿真中所用的數(shù)碼管為共陰極數(shù)碼管代碼分析通過(guò)學(xué)習(xí)已知,欲顯示數(shù)字5,需要先確定其段選碼內(nèi)容(01101101,即0x6DH)即通過(guò)P1口輸出0x6D即可控制該數(shù)碼管點(diǎn)亮由此編寫(xiě)出以下顯示數(shù)字5的驅(qū)動(dòng)程序3.2使用并行接口點(diǎn)亮數(shù)碼管上例中如果讓數(shù)碼管從0顯示到9,且每隔50毫秒就變換一個(gè)數(shù)字又該如何實(shí)現(xiàn)呢?顯然可以通過(guò)編寫(xiě)一個(gè)延時(shí)函數(shù)來(lái)實(shí)現(xiàn)上述功能延時(shí)函數(shù)就是通過(guò)讓單片機(jī)執(zhí)行一些無(wú)意義的語(yǔ)句耗費(fèi)一點(diǎn)CPU的時(shí)間,以此達(dá)到延緩系統(tǒng)其他語(yǔ)句執(zhí)行的目的但這里涉及到延時(shí)50毫秒時(shí)間問(wèn)題,那么又如何確保延時(shí)函數(shù)延時(shí)了50毫秒呢?3.2使用并行接口點(diǎn)亮數(shù)碼管單片機(jī)指令的執(zhí)行時(shí)間與系統(tǒng)的頻率密切相關(guān),即使是同一程序在不同的頻率下,同一條指令的執(zhí)行時(shí)間也是不同的,但是在相同的頻率下執(zhí)行同一指令的時(shí)間是相同的。2.精確調(diào)整的延時(shí)函數(shù)①將開(kāi)發(fā)工程中的單片機(jī)晶振頻率調(diào)整為12MHz。此處調(diào)整時(shí)鐘頻率,與編譯后生成的代碼無(wú)關(guān),僅與使用keil調(diào)試代碼時(shí)有關(guān)。3.2使用并行接口點(diǎn)亮數(shù)碼管voiddelay(intx){inty,z;

for(y=x;y>0;y--)for(z=120;z>0;z--);

}②編寫(xiě)延時(shí)函數(shù)在這個(gè)延時(shí)函數(shù)中,會(huì)接收一個(gè)參數(shù)X,它就是要延時(shí)的時(shí)長(zhǎng),這個(gè)函數(shù)通過(guò)測(cè)試執(zhí)行一次大約為0.986毫秒,十分接近1毫秒可以近似當(dāng)做1毫秒。delay()函數(shù)的一次執(zhí)行時(shí)間(0.986ms)與晶振的頻率是密切相關(guān)的。晶振的頻率越高,delay()的一次執(zhí)行時(shí)間就越短。單片機(jī)指令的執(zhí)行時(shí)間與系統(tǒng)的頻率密切相關(guān),即使是同一程序在不同的頻率下,同一條指令的執(zhí)行時(shí)間也是不同的,但是在相同的頻率下執(zhí)行同一指令的時(shí)間是相同的。2.精確調(diào)整的延時(shí)函數(shù)3.2使用并行接口點(diǎn)亮數(shù)碼管單片機(jī)指令的執(zhí)行時(shí)間與系統(tǒng)的頻率密切相關(guān),即使是同一程序在不同的頻率下,同一條指令的執(zhí)行時(shí)間也是不同的,但是在相同的頻率下執(zhí)行同一指令的時(shí)間是相同的。2.精確調(diào)整的延時(shí)函數(shù)③程序編寫(xiě)完成后,點(diǎn)擊工具欄上的圖標(biāo),會(huì)出現(xiàn)程序調(diào)試窗口。工具欄上的和就分別表示單步執(zhí)行和跳過(guò)函數(shù)繼續(xù)執(zhí)行。配合這兩個(gè)工具按鈕以及屏幕左側(cè)的系統(tǒng)運(yùn)行時(shí)間,就可以計(jì)算得出執(zhí)行一次延時(shí)函數(shù)所需要的時(shí)間了。兩次時(shí)間之差就是延時(shí)函數(shù)的延時(shí)時(shí)長(zhǎng)。3.2使用并行接口點(diǎn)亮數(shù)碼管進(jìn)入設(shè)計(jì)程序后,我們先點(diǎn)擊,進(jìn)行單步運(yùn)行,當(dāng)程序運(yùn)行到delay(1)時(shí),我們記下此時(shí)系統(tǒng)運(yùn)行已經(jīng)耗用的時(shí)間為0.0039100秒,(1)接著再點(diǎn)擊,執(zhí)行一次delay(1),再記錄一下此時(shí)系統(tǒng)的時(shí)間為0.00137700秒,二者之差為0.986毫秒。(2)這就是延時(shí)函數(shù)執(zhí)行一次所用的時(shí)間。(3)3.2使用并行接口點(diǎn)亮數(shù)碼管在擁有了比較精確的延時(shí)函數(shù)后,我們很容易地用它來(lái)制作一個(gè)倒計(jì)時(shí)表。思考:實(shí)現(xiàn)數(shù)碼管倒計(jì)時(shí)的方法?就是依次地從P1口輸出對(duì)應(yīng)的9-0的段選碼,每輸出一個(gè)數(shù)字,延時(shí)1秒鐘。應(yīng)用數(shù)組對(duì)上面方法進(jìn)行簡(jiǎn)化,就是使用循環(huán)配合數(shù)組,實(shí)現(xiàn)9-0的依次輸出。但這種方法代碼書(shū)寫(xiě)的數(shù)量較多,容易寫(xiě)錯(cuò)。優(yōu)點(diǎn)易于理解。3.2使用并行接口點(diǎn)亮數(shù)碼管C51的數(shù)組數(shù)據(jù)類(lèi)型code

數(shù)組名[]={元素1,元素2,......,元素n}注意:定義數(shù)組時(shí)使用的code表示將該數(shù)組存放在程序存儲(chǔ)器空間。加了code后,數(shù)組就只能被調(diào)用但不修改!具有只讀性數(shù)組定義方式數(shù)組名[下標(biāo)]注意:C51中數(shù)組元素的下

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論