單片機小燈閃爍控制_第1頁
單片機小燈閃爍控制_第2頁
單片機小燈閃爍控制_第3頁
單片機小燈閃爍控制_第4頁
單片機小燈閃爍控制_第5頁
已閱讀5頁,還剩9頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

單片機小燈閃爍控制第一頁,共十四頁,編輯于2023年,星期日任務(wù)1:完成小燈閃爍一次的程序設(shè)計任務(wù)描述:利用p1.0口實現(xiàn)一個發(fā)光二極管亮滅(閃爍)一次的系統(tǒng)設(shè)計。1.硬件電路設(shè)計:共陰極接法和共陽極接法。連接電路。你能說出圖中硬件連接有什么問題嗎?P1.0第二頁,共十四頁,編輯于2023年,星期日2.軟件設(shè)計:分析要求,繪制程序流程圖。什么是流程圖?為什么要繪制流程圖?程序流程圖是人們對解決問題的方法、思路或算法的一種描述。反映了程序執(zhí)行的過程。符合人進行邏輯思考的習(xí)慣計算機從根本上來說,沒有任何邏輯性,所以,你必須告訴它,先做什么,后做什么,遇到什么情況又該做什么,等等流程圖設(shè)計本身是一個逐步求精的過程,最終將任務(wù)劃分為若干能由機器指令實現(xiàn)的小模塊。第三頁,共十四頁,編輯于2023年,星期日2.軟件設(shè)計:分析要求,繪制程序流程圖。ORG0000HMOVP1,#00HMOVP1,#01HSJMP$END?第四頁,共十四頁,編輯于2023年,星期日2.軟件設(shè)計:編寫延時250ms的程序。*******軟件延時250ms程序*********MOV R0,#0FAHLOW2:MOV R1,#0C8HLOW1:NOP;1us NOP;1us NOP;1us

DJNZ R1,LOW1;2us

DJNZ R0,LOW2

知識點:1.匯編指令DJNZ、NOP(1)條件轉(zhuǎn)移指令DJNZ(減1非零轉(zhuǎn)移指令)5助記符格式機器碼(B)相應(yīng)操作機器周期DJNZRn,rel11011rrrrelRn(Rn)-1,若(Rn)≠0,則PCPC+rel,否則順序執(zhí)行2DJNZdirect,rel11010101directrel(direct)(direct)-1,若(direct)≠0,則PCPC+rel,否則順序執(zhí)行2第五頁,共十四頁,編輯于2023年,星期日2.軟件設(shè)計:編寫延時250ms的程序。*******軟件延時250ms程序*********MOV R0,#0FAHLOW2:MOV R1,#0C8HLOW1:NOP;1us

NOP;1us NOP;1us DJNZ R1,LOW1;2us DJNZ R0,LOW2

知識點:1.匯編指令DJNZ、NOP(2)空操作指令 NOP助記符格式機器碼(B)相應(yīng)操作指令說明NOP00000000空操作消耗1個機器周期第六頁,共十四頁,編輯于2023年,星期日2.軟件設(shè)計:編寫延時250ms的程序。*******軟件延時250ms程序*********MOV R0,#0FAHLOW2:MOV R1,#0C8HLOW1:NOP;1us NOP;1us NOP;1us DJNZ R1,LOW1;2us DJNZ R0,LOW2

知識點:2.循環(huán)程序設(shè)計(1)結(jié)構(gòu)特點:利用轉(zhuǎn)移指令反復(fù)運行需要多次重復(fù)的程序段。(2)實例:(3)循環(huán)程序的組成:1.初始化部分(設(shè)定循環(huán)次數(shù)等)。2.循環(huán)體(重復(fù)執(zhí)行的部分,用于完成實際操作)3.循環(huán)控制(不斷修改和判別循環(huán)變量,直至結(jié)束)。4.循環(huán)結(jié)束處理。第七頁,共十四頁,編輯于2023年,星期日循環(huán)程序設(shè)計延時程序中延時時間的設(shè)定:源程序:指令周期MOVR3,#(X)H2個T機器

DEL2:MOVR4,#(Y)H2個T機器

DEL1:NOP1個T機器

NOP1個T機器DJNZR4,DEL12個T機器

DJNZR3,DEL22個T機器

指令周期、機器周期T機器與時鐘周期T時鐘的關(guān)系:T機器=12T時鐘=121/fosc=1us(假設(shè)晶振頻率fosc為12M)延時時間的簡化計算結(jié)果:(1+1+2)YX延時時間怎樣計算?若想延時100ms,只需修改計數(shù)初始值,即(1+1+2)125200us=100ms#200#125第八頁,共十四頁,編輯于2023年,星期日2.軟件設(shè)計:編寫延時250ms的程序。*******軟件延時250ms程序*********MOV R0,#0FAHLOW2:MOV R1,#0C8HLOW1:NOP;1us NOP;1us NOP;1us DJNZ R1,LOW1;2us DJNZ R0,LOW2

試計算該程序的延時時間是否為250ms?(1+1+1+2)YX=5us0C8H0FAH=5us200250=250ms也可直接給出十進制數(shù)。實例第九頁,共十四頁,編輯于2023年,星期日實例:循環(huán)程序設(shè)計1S延時程序源程序:MOVR2,#10DEL3:MOVR3,#200DEL2:MOVR4,#125DEL1:NOPNOPDJNZR4,DEL1DJNZR3,DEL2DJNZR2,DEL3RET第十頁,共十四頁,編輯于2023年,星期日2.軟件設(shè)計:編寫總程序。第十一頁,共十四頁,編輯于2023年,星期日任務(wù)2:完成小燈連續(xù)閃爍控制程序設(shè)計任務(wù)描述:利用p1.0口實現(xiàn)一個發(fā)光二極管連續(xù)亮滅(閃爍)的系統(tǒng)設(shè)計。1.硬件電路設(shè)計:不變!2.軟件設(shè)計:流程圖如下第十二頁,共十四頁,編輯于2023年,星期日任務(wù)2:完成小燈連續(xù)閃爍

溫馨提示

  • 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論