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

正文內(nèi)容

第三章常用控制程序設(shè)計(jì)-資料下載頁

2024-09-28 14:49本頁面

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

  

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