




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
單片機程序設計一、匯編程序約定二、編語言程序設計步驟三、常用程序結構:一、匯編程序約定匯編語言程序:用匯編語言編寫的、完成特定功能的指令序列。匯編程序:
能將匯編語言源程序轉換成機器語言目標程序的系統軟件。
匯編語言程序到機器語言程序的轉換過程稱為匯編。1、手工匯編:人工查指令表匯編。用于設計短小程序或調試程序的場合。2、機器匯編:用匯編程序進行匯編。源程序使用機器匯編要考慮匯編程序的約定:1)按指令格式和語法規則編寫程序。常數的表示: 十進制數:20 十六進制數:87H,0F0H 二進制數:01011001B 字符: ‘H’ 字符串: “Hello”。
2)使用偽指令提供匯編信息。匯編的主要任務:1)確定程序中每條匯編語言指令的指令機器碼。2)確定每條指令在存儲器中的存放地址。3)提供錯誤信息。 4)提供目標執行文件(*.OBJ/*.HEX)和列表文件(*.LST)。一、匯編語言指令類型:
1.機器指令:
指令系統中的全部指令,每條指令有對應的機器代碼。2.偽指令:
匯編控制指令,僅提供匯編信息,沒有指令代碼。3.宏指令:
宏匯編功能:將需要多次反復執行的程序段定義成一個宏指令名(宏定義),編程時,可在程序中使用宏指令名來替代一段程序(宏調用)。宏定義過程:宏指令名MACRO形式參數 … ;定義程序段
ENDM宏調用過程: … 宏指令名實際參數 … 宏指令名實際參數二、匯編語言程序設計步驟(一)、確定方案和計算方法;(二)、了解應用系統的硬件配置、性能指標;(三)、建立系統數學模型,確定控制算法和操作步驟;(四)、畫程序流程圖;表示程序結構和程序功能。(五)、編制源程序。1.合理分配存儲器單元和了解I/O接口地址。2.按功能設計程序,明確各程序之間的相互關系。3.用注釋行說明程序,便于閱讀、修改和調試。三、常用程序結構:1順序程序順序程序又稱簡單程序,程序走向只有一條路徑。例:雙字節變補程序(設數據在R4R5中): MOV A,R5
;取低字節 CPL A ADD A,#01H ;低字節變補 MOV R5,A MOV A,R4
;取高字節 CPL A ADDCA,#00H ;高字節變補 MOV R4,A
順序程序、分支程序、循環程序。
2、分支程序2-1單重分支程序一個判斷決策框,程序有兩條出路。兩種分支結構:例:求R2中補碼絕對值:正數不變,負數變補。 MOVA,R2 JNBACC.7,NEXT;為正數?為0跳 CPLA ;負數變補 INCA MOVR2,ANEXT:SJMPNEXT;結束由條件轉移指令構成程序判斷框部分,形成程序分支結構。2-2多重分支程序例:求符號函數Y=SGN(X)+1(當X>0)SGN(X)=0(當X=0)-1(當X<0)SYMB:MOVA,40H ;取X JZ STOR ;X=0跳,Y=X JB ACC.7,MINUS;X<0(A.7=1跳)MOVA,#01H ;X>0,Y=+1SJMPSTORMINUS:MOVA,#0FFH
;X<0,Y=-1STOR:MOV41H,A ;保存YRET一、多次使用條件轉移指令,形成兩個以上判斷框。溫控系統結構框圖電熱箱采用電熱絲加熱,由雙向可控硅控制加熱量的大小;溫度傳感器檢測電熱箱內的溫度,經放大與A/D轉換后進入單片機;單片機將設定的溫度值與檢測到的電熱箱中的實際溫度進行比較,并調節運算后,發出控制信號經光電隔離器去驅動雙向可控硅以調節加在電熱絲的電壓,從而控制電熱箱的溫度。電熱箱單片機溫控系統結構框圖例題(多分支)[例4.3]某溫度控制系統,采集的溫度值(Ta)放在累加器A中。此外,在內部RAM54H單元存放控制溫度下限值(T54),在55H單元存放控制溫度上限值(T55)。若Ta>T55,程序轉向JW(降溫處理子程序);
若Ta<T54,則程序轉向SW(升溫處理子程序);
若T55≥Ta≥T54,則程序轉向FH(返回主程序)。
=:去FH思路:Ta=T55?≠:Ta>T55:去JW
Ta<T55:Ta=T54?=:去FH
≠:Ta<T54:去SW
Ta>T54:去FH算法:(1)Ta>T55:去JW(2)Ta<T54:去SW(3)T55≥Ta≥T54:去FH程序:
CJNEA,55H,LOOP1 AJMPFHLOOP1:JNCJWCJNEA,54H,LOOP2AJMPFHLOOP2:JCSWFH:RET;Ta≠T55:轉向LOOP1;Ta=T55:返回;若CY=0,表明Ta>T55,轉降溫處理程序;Ta≠T54:轉向LOOP2;Ta=T54:返回;若CY=1,表明Ta<T54,轉升溫處理程序;T55≥Ta≥T54,返回主程序若Ta>T55,程序轉向JW(降溫處理子程序);若Ta<T54,則程序轉向SW(升溫處理子程序);若T55≥Ta≥T54,則程序轉向FH(返回主程序)。3 循環程序3-1 循環程序的構成各個環節任務:一、初始化部分:循環準備工作。如:清結果單元、設指針、設循環控制變量初值等。二、循環體:循環工作部分:需多次重復處理的工作。循環控制部分:
1.修改指針和循環控制變量。2.檢測循環條件:滿足循環條件,繼續循環,否則退出循環。三、結束部分:
處理和保存循環結果。允許0次循環的循環結構:在循環工作之前檢測循環條件。包含多次重復執行的程序段,循環結構使程序緊湊。3-2單重循環簡單循環結構:循環體中不套循環。循環控制方法: 計數控制; 特征標志控制。3-3多重循環循環體中套循環結構。以雙重循環使用較多。試計算延時程序的執行時間。
源程序 指令周期(M)指令執行次數習題:DELAY:MOVR6,#100 1D1:MOVR7,#10 1D2:NOP 1
DJNZR7,D2 2t=6.606ms
DJNZR6,D1 2 RET 2計算延時程序的執行時間(設時鐘fOSC=6MHz,T=2s
。DELAY:MOVR6,#64H(=100) 1 I1:MOVR7,#0FFH(=255)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 客運駕駛員管理制度
- 家俱定制廠管理制度
- 家政保潔員管理制度
- 當家塘長效管理制度
- 影視后期部管理制度
- 德克士員工管理制度
- 心電圖院感管理制度
- 快遞存放點管理制度
- 怎樣制作群管理制度
- 總承包施工管理制度
- 倉庫管理基礎知識培訓
- 二三級醫院放射科要求
- 自閉癥孤獨癥兒童語言與溝通評估表
- 鋼網架結構安裝、拼裝施工方案
- DB32989-2007低壓電氣裝置規程
- 部編版六年級下冊道德與法治知識點大匯總
- T∕CSTE 0008-2020 污水處理用碳源液體乙酸鈉
- Q∕GDW 46 10022.9-2020 主進水閥本體運檢導則
- 姿態動力學作業(共9頁)
- 電網公司竣工決算報告編制規范與竣工決算資料的要求
- 城市主干道工程監理大綱
評論
0/150
提交評論