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

正文內(nèi)容

第三章常用控制程序設計-資料下載頁

2025-09-19 14:49本頁面

【導讀】第三章常用控制程序設計。巡回檢測程序設計。數(shù)字濾波程序設計。上下限報警處理程序設計。LED數(shù)碼管顯示程序設計。判斷程序就是分支執(zhí)行程序。定的條件是否滿足,根據(jù)判定的結果(真或假)再執(zhí)行相。制輸入電壓來實現(xiàn)的,首先檢測出電機的實際轉(zhuǎn)速,再比。轉(zhuǎn)速,就需要增加輸入電壓;如果電機的轉(zhuǎn)速高于給定轉(zhuǎn)。上述功能的執(zhí)行過程如圖3-1. 降低輸入電壓提高輸入電壓。MCS-51系列的程序狀態(tài)字是一個用于存儲程序。運行狀態(tài)信息的8位寄存器,其位定義如表3-1所示。有些位狀態(tài)是根據(jù)程序運算結果由硬件自動設置;而有些。位狀態(tài)則是通過軟件設定的。PSW的位狀態(tài)可通過指令讀。出,以實現(xiàn)程序的轉(zhuǎn)移。圖3-28位無符號數(shù)的比較流程框圖。CLRCY;進位標志清零。JZEQU;累加器A=0,則M=N,轉(zhuǎn)EQU. JZHEQU;高8位相等,轉(zhuǎn)低8位比較。照一定的周期進行檢查和測量,檢測的數(shù)據(jù)通過。巡回檢測程序主要由以下幾個方面構成:

  

【正文】 FH,6FH,77H,7CH,39H,5EH,79H,71H 第三章 常用控制程序設計 ( 2)軟件譯碼動態(tài)顯示電路 圖 8155擴展實現(xiàn)的 8位LED動態(tài)顯示接口 。圖中利用 PA口輸出段選碼 , PB口輸出位選碼 。 利用 8155擴展實現(xiàn)的動態(tài)顯示程序流程如圖 332所示 。 開 始設置顯示數(shù)據(jù)區(qū)首址8 1 5 5 初始化設置位選字顯示完8 位數(shù)據(jù)否?輸出位選字讀顯示數(shù)據(jù)延時1 m s查段選碼輸出段選碼改變位選字返 回否是第三章 常用控制程序設計 利用 8155擴展實現(xiàn)的動態(tài)顯示程序清單: DISP: MOV A,03H ; 8155初始化數(shù)據(jù) MOV DPTR,7F00H ; 8155命令 /狀態(tài)寄存器地址 MOVX @DPTR,A ; 設置顯示數(shù)據(jù)首址 MOV R7,7FH ; 設置位選字 MOV A,R7 DS1: MOV DPTR,7F02H ; 指向 PB口 MOVX @DPTR,A ; 送位選字 DEC DPTR ; 指向 PA口 MOV A,@R0 ; 讀顯示數(shù)據(jù) ADD A,0DH ; 0DH為從查表指令到段選碼的首址 第三章 常用控制程序設計 MOVC A,@A+PC ; 查段選碼 MOVX @DPTR,A ; 送段選碼至 PA口 ACALL DELAY1 ; 延時 1毫秒 INC R0 ; 指向下一顯示數(shù)據(jù) MOV A,R7 JNB ,OVER ; 判斷是否顯示完 8位數(shù)據(jù) RR A ; 未顯示完 , 改變位選字 MOV R7,A AJMP DS1 ; 繼續(xù)顯示下一位 OVER: RET DB 3FH,06H,5BH,4FH,06H,6DH,7DH,07H,7FH,6FH,77H,7CH,39H,5EH,79H,71H 返回本節(jié) 第三章 常用控制程序設計 定時程序設計 軟件定時程序 硬件定時程序 返回本章首頁 第三章 常用控制程序設計 軟件定時程序 雙循環(huán)定時程序流程如圖 333所示。 開 始設置內(nèi)循環(huán)次數(shù)內(nèi)循環(huán)結束否?設置外循環(huán)次數(shù)空操作外循環(huán)結束否?返 回是否否是第三章 常用控制程序設計 如取 N=166( 0A6H) , 上述簡單軟件定時程序的定時時間就是 1ms, 如果需要 250ms的定時時間 , 則所需的外循環(huán)的次數(shù)為 250(0FAH)。 程序如下: DELAY250: MOV R6,0FAH ; 置外循環(huán)次數(shù) DELAY1: MOV R7, 0A6H ; 置內(nèi)循環(huán)次數(shù) NOP ; 空操作指令 D1: NOP DJNZ R7,D1 ; 內(nèi)循環(huán)未結束 , 繼續(xù) DJNZ R6,DELAY1 ; 外循環(huán)未結束 , 繼續(xù) RET 返回本節(jié) 第三章 常用控制程序設計 硬件定時程序 51系列單片機內(nèi)部有兩個 16位的可編程定時器 T0和 T1,分別由 TH0、 TL0和 TH TL1兩個 8位計數(shù)器構成 。 T0和T1的定時功能是通過對單片機內(nèi)部計數(shù)脈沖的計數(shù)實現(xiàn)的 。因為每個機器周期產(chǎn)生一個計數(shù)脈沖 , 因此根據(jù)單片機的晶振頻率就可以計算出定時器的計數(shù)頻率 。 這樣 , 如果確定了計數(shù)值 , 就能計算出定時時間 , 而知道了定時時間也可計算出計數(shù)器的預置值 。 定時器控制寄存器 ( TCON)和工作方式控制寄存器 ( TMOD) 分別控制定時器的運行和工作方式 。 第三章 常用控制程序設計 1. 定時器簡介 TMOD寄存器是控制定時器工作方式的 8位專用寄存器 。 寄存器的高 4位定義 T1,低 4位定 T0。 各位的具體定義如表 33所示 。 第三章 常用控制程序設計 2. 硬件定時程序設計 例 35 設單片機的晶振頻率為 6 MHz, 利用 T0產(chǎn)生周期為 500μs的等寬正方波脈沖 , 通過 輸出 。 ( 1)選擇工作方式 ( 2)計算預置計數(shù)值 ( 3) TMOD寄存器初始化 ( 4)程序設計 第三章 常用控制程序設計 程序設計 主程序: MOV TMOD,02H ; T0工作方式 2 MOV TH0,83H ; 設置計數(shù)初始值 MOV TL0,83H ; 保存計數(shù)初始值 SETB EA ; 開中斷 SETB ET0 ; T0中斷允許 SETB TR0 ; 啟動定時 WAIT: AJMP WAIT ; 等待中斷 中斷服務程序: CPL ; 方波輸出 RETI ; 中斷返回 第三章 常用控制程序設計 例 36 設計一個能夠自動記錄秒 、 分和小時的計時時鐘 。 程序設計分為初始化和中斷服務程序兩部分 。 初始化程序清單: ORG 0000H AJMP MAIN ORG 0003H AJMP INT0 ; 設置外部中斷 0中斷入口地址 ORG 000BH 第三章 常用控制程序設計 AJMP TIME0 ; 設置 T0中斷入口地址 ORG 001BH AJMP COUN1 ; 設置 T1中斷入口地址 MAIN: MOV SEC,00H ; 秒存儲單元清 0 MOV MIN,00H ; 分存儲單元清 0 MOV HUR,00H ; 小時存儲單元清 0 MOV TMOD,41H ; T1為計數(shù)方式 , 定時器 0工作方式 1 MOV TH0,17H ; 設置 T0的計數(shù)初值 MOV TL0,0B6H MOV TH1,0FFH ; 設置 T1的計數(shù)初值 MOV TL1,0F7H 第三章 常用控制程序設計 SETB EA ; 開中斷 SETB IT0 ; 外中斷 0中斷請求信號為脈沖方式 SETB ET1 ; T1中斷允許 SETB ET0 ; T0中斷允許 SETB EX0 ; 外中斷 0中斷允許 SETB TR0 ; 啟動定時器 0 SETB TR1 ; 啟動計數(shù)器 1 HERE: AJMP HERE ; 等待中斷 第三章 常用控制程序設計 中斷服務程序分以下幾部分。 定時器 T0定時中斷程序清單: TIME0: CLR EA ; 關中斷 SETB ; 發(fā)計數(shù)脈沖 NOP CLR NOP MOV TH0,17H ; 加載 T0計數(shù)值 MOV TL0,0B6H SETB EA ; 開中斷 RETI ; 中斷返回 第三章 常用控制程序設計 計數(shù)器 T1計數(shù)中斷程序清單: COUN1: CLR EA ; 關中斷 SETB ; 發(fā)送脈沖 , 通知 1秒計時到 NOP CLR NOP MOV TH1,0FFH ; 加載 T1計數(shù)值 MOV TL1,0F7H SETB EA RETI 第三章 常用控制程序設計 外部中斷 0中斷程序流程如圖 334所示 。 開 始秒+ 1到6 0 秒否?關中斷分+ 1秒存儲單元清零顯示秒到6 0 分否?分+ 1分存儲單元清零顯示分到2 4 小時否?小時單元清零顯示小時返 回否否否是是是第三章 常用控制程序設計 外部中斷 0中斷程序清單: INT0: CLR EA ; 關中斷 INC SEC ; 秒存儲單元加 1 MOV A,SEC CJNE A,3CH,S_SHOW ; 判斷是否到 60秒 INC MIN ; 60秒到 , 分存儲單元加 1 MOV SEC,00H ; 秒存儲單元清 0 S_SHOW: ACALL HTOBCD ; 調(diào)用 16進制數(shù)轉(zhuǎn)化為 BCD碼子程序 ACALL DISP ; 調(diào)用顯示子程序 , 顯示秒 MOV A,MIN CJNE A,3CH,M_SHOW ; 判斷是否到 60分 第三章 常用控制程序設計 INC HUR ; 60分到 , 小時存儲單元加 1 MOV MIN,00H ; 小時存儲單元清 0 M_SHOW: ACALL HTOBCD ; 調(diào)用 16進制數(shù)轉(zhuǎn)化為 BCD碼子程序 ACALL DISP ; 調(diào)用顯示子程序 , 顯示分 MOV A,HUR CJNE A,18H,H_SHOW ; 判斷是否到 24小時 MOV HUR,00H ; 24小時到 , 小時存儲單元清 0 H_SHOW: ACALL HTOBCD ; 調(diào)用 16進制數(shù)轉(zhuǎn)化為 BCD碼子程序 ACALL DISP ; 調(diào)用顯示子程序 , 顯示小時 SETB EA ; 開中斷 RETI ; 中斷返回 返回本節(jié) 第三章 常用控制程序設計 鍵盤控制程序設計 非編碼鍵盤的掃描程序設計 編碼鍵盤 返回本章首頁 第三章 常用控制程序設計 非編碼鍵盤的掃描程序設計 下面以通過 8155擴展 I/O口組成的 4 8非編碼鍵盤為例介紹行列式鍵盤工作原理及掃描程序設計 。 通過 8155擴展 I/O口組成的 4 8非編碼鍵盤如圖 335所示 。 第三章 常用控制程序設計 ................ ................ ................ ............ ....IN T0P P P P P P P P AD 0AD 7AD 6AD 5AD 4AD 3AD 2AD 1PA 0PA 7PA 6PA 5PA 4PA 3PA 2PA 1PC 0PC 3PC 2PC 174 LS 2 1+ 5 V4 8鍵 盤81 5580 31.......圖 335 8155擴展 I/O口組成的 4 8非編碼鍵盤 第三章 常用控制程序設計 1. 鍵盤工作原理 確定按下的鍵的鍵號:為了方便鍵處理程序的設計 , 一般采用依次排列鍵值的方法 , 以保證鍵值和鍵號一致 。 比如 , 根據(jù)行列式鍵盤工作原理 , 圖 335中的 32個鍵的鍵值如下 ( X為任意值 ) : FEXE FDXE FBXE F7XE EFXE DFXE BFXE 7FXE FEXD FDXD FBXD F7XD EFXD DFXD BFXD 7FXD FEXB FDXB FBXB F7XB EFXB DFXB BFXB 7FXB FEX7 FDX7 FBX7 F7X7 EFX7 DFX7 BFX7 7FX7 第三章 常用控制程序設計 2. 鍵盤掃描程序設計 較常用的鍵盤掃描的工作方式有編程掃描方式和中斷掃描方式兩種 。 ( 1) 編程掃描方式 設在主程序中已將 8155的 PA口為基本輸出口 , PC口為基本輸入口 。 鍵盤掃描程序流程框圖如圖 336所示 。 第三章 常用控制程序設計 圖 336 鍵盤掃描程序流程框圖 開 始有鍵閉合否?調(diào)用子程序延時6 m S調(diào)用子程序延時1 2 m S有鍵閉合否?判斷閉合鍵號 棧輸入鍵號 A閉合鍵釋放否?返 回是是是否否否第三章 常用控制程序設計 鍵盤掃描子程序清單: KEY1: ACALL KS1 ; 有無鍵按下子程序 JNZ LK1 ; 有鍵按下 , 轉(zhuǎn)去抖延時 AJMP KEY1 ; 無鍵按下 , 繼續(xù)掃描 LK1: ACALL DELA12 ; 12ms延時程序調(diào)用 ACALL KS1 ; 判斷鍵是否真正按下 JNZ LK2 ; 有鍵按下 , 轉(zhuǎn)逐列掃描 AJMP KEY1 ; 無鍵按下 , 繼續(xù)掃描 LK2: MOV R2,0FEH ; 設置首列掃描字 MOV R4,00H ; 保存首列號 LK4: MOV DPTR,7F01H ; 列掃描字送至 PA口 第三章 常用控制程序設計 MOV A,R2 MOVX @DPTR,A INC DPTR ; 指向 PC口 INC DPTR MOVX A,@DPTR ; 讀入行狀態(tài) JB ,LONE ; 第 0行無鍵按下 , 轉(zhuǎn) LONE MOV A,00H ; 有鍵按下 , 設置行首鍵號 AJMP LKP ; 轉(zhuǎn)求鍵號 LONE: JB ,LTWO ; 第 1行無鍵按下 , 轉(zhuǎn) LTWO MOV
點擊復制文檔內(nèi)容
教學課件相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1