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

正文內(nèi)容

基于單片機的紅外遙控開關(guān)系統(tǒng)(編輯修改稿)

2024-12-16 02:42 本頁面
 

【文章內(nèi)容簡介】 遙控碼波形圖.圖3—14 一幀遙控碼波形圖鍵按下? 圖3—15 遙控發(fā)射程序控制流程圖圖3—16遙控發(fā)射控制流程圖低電子脈沖>2ms?高電子脈沖>3ms?=0?圖3—17遙控接收控制流程圖第四章 系統(tǒng)程序分析 鍵盤掃描程序本電路采用44矩陣式鍵盤電路,0F0H送至P0口,再讀入P0口值與0F0H相比較,相等則說明沒有鍵按下,再調(diào)用延時消抖程序,并將R2賦行號初值,(送寄存器A).KEYWORK: MOV P0,0F0H 。置P0口輸入狀態(tài) MOV A,P10 讀入P0口值MOV B,A 。P0口值暫存B中CJNE A,0F0H,KEYHIT 。不等于0FFH,轉(zhuǎn)KEYHIT(有鍵按下)KEYOUT: RET 。沒有鍵按下返回。KEYHIT: LCALL DL10MS 。延時去抖動 MOV A,P0 。再讀入P0口值至A CJNE A,B,KEYOUY 。A不等于B(是干擾),子程序返回 SETB 。有鍵按下,找鍵號開始,查0行 SETB SETB MOV A,P0 。讀入P0口值CJNE A,0FEH,KEYVAL0 。P0不等于0FEH,按下鍵在第0行 SETB 。不在第0行,開始查1行 CLR MOV A,P0 。讀入P1口值CJNE A,0FDH,KEYVAL1 。P0口不等于0FDH,按下鍵在第1行 SETB 。不在第1行,開始查2行 CLR MOV A,P0 讀入P0口值CJNE A,0FBH,KEYVAL2 。P0口不等于0FBH,按下鍵在第2行 SETB 。不在第2行,開始查3行 CLR MOV A,P0 。讀入P0口值CJNE A,0F7H,KEYVAL3 。P0口不等于0F7H,按下鍵在第3行 LJMP KEYOUT 。不在第3行,子程序返回KEYVAL0: MOV R2,00H 。按下鍵在第0行,R2賦行號初值0 LJMP KEYVAL4 。跳到KEYVAL4KEYVAL1: MOV R2,04H 。按下鍵在第1行,R2賦行號初值4 LJMP KEYVAL4 。跳到KEYVAL4KEYVAL4: MOV DPTR,KEYVALTAB 。翻譯成連續(xù)數(shù)字 MOV B,A 。P1口值暫存B內(nèi) ANL B,0F0H 。取高四位 MOV R0,0 。清R0KEYVAL5: MOV A,R0 。查列號開始,R0數(shù)據(jù)放入A SUBB A,04H 。A中數(shù)減4 JNC KEYOUT 。借位C為0,查表出錯,返回 MOV A,R0 查表次數(shù)小于4,繼續(xù)查, MOVC A,@A+DPTR 。查列號表 INC R0 。R0加1 CJNE A,B,KEYVAL5 。查得值和P1口值不等,轉(zhuǎn)KEYVAL5再查 DEC R0 。查得值和P1口值相等,R0減1MOV A,R0 。放入A(R0中數(shù)值即為列號值)ADD A,R2 。與行號初值相加成為鍵號值(015)KEYVALTAB: DB 0E0H,0D0H,0B0H,07H 。列號對應(yīng)數(shù)據(jù)表。對應(yīng)列號: 0 1 2 3 根據(jù)寄器A中的鍵號,首先執(zhí)行A3程序,(因為以下所執(zhí)行的長跳轉(zhuǎn)指令“LJMP”為3字節(jié)指令)然后使用散轉(zhuǎn)指令“JMP A,@A+DPTR”,各跳轉(zhuǎn)指令均指向與之相應(yīng)的紅外線脈沖賦值程序,最后跳轉(zhuǎn)至脈沖發(fā)送程序,發(fā)出與鍵號相對應(yīng)的脈沖.MOV B,A 。鍵號乘3處理用于JMP散轉(zhuǎn)指令 RL A 。鍵號乘3處理用于JMP散轉(zhuǎn)指令 ADD A,B 。鍵號乘3處理用于JMP散轉(zhuǎn)指令 MOV DPTR,KEYFUNTAB 。取散轉(zhuǎn)功能程序(表)首址 JMP @A+DPTR 。散轉(zhuǎn)至對應(yīng)功能程序標號KEYFUNTAB: LJMP KEYFUN00 。跳到鍵號0對應(yīng)功能程序標號 LJMP KEYFUN01 。跳到鍵號1對應(yīng)功能程序標號 LJMP KEYFUN15 。跳到鍵號15對應(yīng)功能程序標號 RETKEYFUN00: MOV A,02H 。發(fā)2個脈沖 LJMP REMOTE 。轉(zhuǎn)發(fā)送程序 RETKEYFUN01: MOV A,03H 。發(fā)3個脈沖 LJMP REMOTE 。轉(zhuǎn)發(fā)送程序 RET KEYFUN15: MOV A,11H 。發(fā)17個脈沖 LJMP REMOTE 。轉(zhuǎn)發(fā)送程序 RET ,通過定時器中斷程序?qū)崿F(xiàn),每次溢出中斷時對T0取反。機器周期為:T=1/f=1/56700=。設(shè)需要裝入T0的初值為X,則有:(X)=≈9。,則定時器設(shè)定為模式2,初值為(2569)=,.MOV IE,00H 。關(guān)所有中斷 MOV TMOD,20H 。8位自動重裝初值模式 MOV TH1,0F7H 。定時為9微秒初值 MOV TL1,0F7H SETB EA 。開總中斷允許INTT1: CPL T0 。 RETI 。中斷返回REMOTE: MOV R1,A 。裝入發(fā)射脈沖個數(shù) LJMP OUT3 。轉(zhuǎn)第一個碼發(fā)射處理OUT: MOV R0,64H 。1MS寬低電平發(fā)射控制數(shù)據(jù)OUT1: SETB ET1 。開T1中斷 SETB TR1 。開啟定時器T1 NOP 。延時
點擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1