選擇分類:當前分類——當前分類 相關聯或者相類似的文章: 三十分鐘一個小時學會單片機(9045) 什么是單片機?單片機有什么用? (8723) 如何用STC板將代碼燒錄進IC(8681) 怎樣安裝AT51編程板的USB轉串口軟件?(8206) 送給單片機愛好者——LED在線編碼器(1814) 送給單片機愛好者——LED點陣在線編碼器(1544) 單片機系統中的漢字顯示(1492) 帶語音報數功能的搶答器(1489) 用VB進行串口實時數據采集(1347) 用AT89C2051設計超聲波測距儀(1171) 小小電子鬧鐘 生活學習良伴(1165) DS1820測溫原理(1129) 幾句代碼實現控制攝像頭(轉)(1117) STC單片機選型指南(1111) 自制PIC單片機編程器(1105) USB轉串口芯片CH340(1010) 快速學習單片機之黃金機會!(1010) 告戒購單片機開發實驗板初學者(970) 新款實用旋轉LED顯示屏A(890) 使用市售 USB轉RS232串口與PLC通信的測試報告 (881) 首頁 前頁 后頁 尾頁 本站推薦: | 紅外線遙控器解碼程序 ORG 0000H AJMP MAIN ORG 0003H ;外部中斷INT0入口地址 AJMP INT ;轉中斷服務子程序 MAIN: MOV SP,#40H MOV P1,#00H SETB EA ;開CPU中斷 SETB IT0 ;設定INT0觸發方式 SETB EX0 ;INT0請求中斷 DSP: MOV R2,#9 ;將遙控器鍵值轉化成A(0~9) MOV DPTR,#TAB1 VV: MOV A,R2 MOVC A,@A+DPTR XRL A,1CH JZ ABC DJNZ R2,VV ABC: MOV A,R2 MOV DPTR,#TAB ;將A的值通過數碼管顯示出來 MOVC A,@A+DPTR RX1: MOV P1,A CLR P0.1 AJMP DSP INT: CLR EA MOV R6,#10 SB: ACALL YS1 JB P3.2,EXIT DJNZ R6, SB JNB P3.2, $ ;等待高電平避開9毫秒低電平引導脈沖 ACALL YS2 ;延時4。74毫秒判斷是否連發 JB P3.2,EXIT CPL P0.0 MOV R1,#1AH ;將32位代碼分別放在1AH/1BH/1CH/1DH中 MOV R2,#4 PP: MOV R3,#8 JJJJ: JNB P3.2,$ LCALL YS1 MOV C,P3.2 JNC UUU JB P3.2,$ UUU: MOV A,@R1 RRC A MOV @R1,A DJNZ R3,JJJJ INC R1 DJNZ R2,PP MOV P2,1CH MOV A,1AH ;進行代碼識別 XRL A,#0 ;判斷1AH的值是否等于00000000 JNZ EXI ;如果不同則無效將1CH清零 CLR P0.1 MOV A,1BH XRL A,#11110111B ;再判斷高8位地址是否正確 JNZ EXI MOV A,1CH CPL A XRL A,1DH ;將1CH的值取反后和1DH比較 不同則無效丟棄核對數據是否準確 JNZ EXI AJMP EXIT EXI: MOV 1CH,#0 EXIT: SETB EA ;允許中斷 RETI YS1: MOV R4,#20 ;精確延時882微秒 D1: MOV R5,#20 DJNZ R5,$ DJNZ R4,D1 RET YS2: MOV R4,#10 ;精確延時4740微秒 D2: MOV R5,#235 DJNZ R5,$ DJNZ R4,D2 RET TAB: DB 60H,7DH,0D0H,58H,4DH DB 4AH,42H,7CH,40H,48H TAB1:DB 0CH,09H,1DH,1FH,0DH DB 19H,1BH,11H,15H,17H END ;TAB LED數碼管顯示表 TAB1遙控器鍵值表 1、 本站不保證以上觀點正確,就算是本站原創作品,本站也不保證內容正確。 2、如果您擁有本文版權,并且不想在本站轉載,請書面通知本站立即刪除并且向您公開道歉! |