51单片机红外遥控解码程序(2)
; MOV A,CODE4
; CJNE A,#10H,EXIT_REMOT ; MOV A,CODE3
; CJNE A,#0EFH,EXIT_REMOT
;---------------按键码判断----------------------- MOV A,CODE2 CPL A
XRL A,CODE1 JNZ EXIT_REMOT ACALL FENLI
AJMP EXIT_REMOT1
51单片机红外遥控解码程序
;--------------将按键码转换为标准的码值----------- OK_REMOT:
MOV TIME3_REMOT,#15 ;按键数:15个按键
MOV R4 DPTR,#TAB_REMOT ;指针指向按键码值表 OK_REMOT1:
MOV A,TIME3_REMOT ;将码值表第一个数与CODE2比较 MOVC A,@A+DPTR XRL A,CODE2
JZ OK_REMOT2 ;相同,已经找到,跳转出口
DJNZ TIME3_REMOT,OK_REMOT1;不同,未找到,取下一个按键码值比较,直到相同为止 AJMP EXIT_REMOT1 ;已经找完码值表,未找到匹配数据,退出 ;------------- OK_REMOT2:
MOV R4,TIME3_REMOT ;将标准码值存入R4 AJMP EXIT_REMOT
;--------------------按键码值表------------------------ TAB_REMOT: DB 0H ;SETB
;ST.BY-INPUT-REST DB 04H,02H,06H ;
;FR- MAST+ FR+ DB 0EH,07H,00H
; ;SUB- MUTE SUB+ DB 10H,0FH,12H
; ;CEN- MAST+ CEN+ DB 13H,03H,0AH
; ;SUR- SET75 SUR+ DB 11H,08H,01H
;---------------解码中断退出程序-------------------- EXIT_REMOT1: ;异常退出 MOV TIME1_REMOT,#32 EXIT_REMOT: ;正常退出
51单片机红外遥控解码程序
MOV TH0,#0 ;重设定时器0 MOV TL0,#0 SETB EA
SETB TR0 ;开中断 ; SETB EX0
CLR IE0 ;清外中断标志,避免反复中断 POP DPL POP DPH POP PSW
POP ACC ;出栈 SETB P1.7 RETI
;=========================红外解码中断程序完毕==================== ;=========================定时中断程序============================ ;============================================================ ;以下为定时器中断程序
;功能:每120MS清除遥控用户码缓存 ;入口函数: ;出口函数:
;============================================================ TIME0: CLR EA
MOV TH0,#0 MOV TL0,#0 MOV CODE1,#0 MOV CODE2,#0 MOV CODE3,#0 MOV CODE4,#0 SETB EA RETI
;============================================================== ;=======================以下为数码管显示数分离子程序================
; ;功能:将遥控器的用户码,用户反码,按键码,的十位与个位分离 ;入口函数:R3--用户码,R2--用户反码,R1---按键码
;出口函数:D1-用户码十位,D2--用户个位,D3--用户反码十位,D4---用户反码个位, ; ;D5---按键码十位,D6---按键码个位
;---------------------------------------------------------- FENLI:
51单片机红外遥控解码程序
MOV A,R3 ;分离用户反码 MOV B,#16 DIV AB MOV D1,A MOV D2,B
MOV A,R2 ;分离用户码 MOV B,#16 DIV AB MOV D3,A MOV D4,B
MOV A,R1 ;分离按键码 MOV B,#16 DIV AB MOV D5,A MOV D6,B RET
;-----------分离完毕-------------------------
;===================以下为数码管显示子程序======================= ;入口函数:D1---D6
;-------------------------------------------------------------- DIG:
MOV DPTR,#TAB_DIG ;显示用户反码十位 MOV A,D1
MOVC A,@A+DPTR MOV P2,#0FFH MOV P0,A CLR DIG1
ACALL YS2MS
MOV DPTR,#TAB_DIG ;显示用户反码个位 MOV A,D2
MOVC A,@A+DPTR MOV P2,#0FFH MOV P0,A CLR DIG2
ACALL YS2MS
MOV DPTR,#TAB_DIG ;显示用户码十位
51单片机红外遥控解码程序
MOV A,D3
MOVC A,@A+DPTR MOV P2,#0FFH MOV P0,A CLR DIG3
ACALL YS2MS
MOV DPTR,#TAB_DIG ;显示用户码个位 MOV A,D4
MOVC A,@A+DPTR MOV P2,#0FFH MOV P0,A CLR DIG4
ACALL YS2MS
MOV DPTR,#TAB_DIG ;显示按键码十位
MOV A,D5 MOVC A,@A+DPTR MOV P2,#0FFH MOV P0,A CLR DIG5 ACALL YS2MS MOV DPTR,#TAB_DIG ;显示按键码个位 MOV A,D6 MOVC A,@A+DPTR MOV P2,#0FFH MOV P0,A CLR DIG6
ACALL YS2MS
;---------------------------显示完毕----------------------------------- RET
;------------------------------数码管段码表------------------------------------ TAB_DIG: ;0 1 2 3 4 5 6 7 8 9 A B C D E F 全亮 消隐
DB 5H,0B7H,51H,31H,0A3H,29H,9H,37H,1H,21H,3H,89H,4DH,4DH,49H,4BH,0h,0ffh ;------------------------------延时------------------------------------------- YS2MS: MOV R7,#15
DEL1:MOV R6,#100 DJNZ R6,$ DJNZ R7,DEL1 RET
END
…… 此处隐藏:1254字,全部文档内容请下载后查看。喜欢就下载吧 ……相关推荐:
- [求职职场]加法运算定律的运用练习题
- [求职职场]大型石油化工工业过程节能新技术
- [求职职场]2015-2020年中国箱纸板行业分析与投资
- [求职职场]NADEX-IWC5A点焊机故障代码
- [求职职场]英语阅读 非常有用
- [求职职场]鲁卫疾控发〔2012〕2号(联合,印发山东
- [求职职场]2014年莆田公务员行测技巧:数字推理的
- [求职职场]基于最近发展区理论的高中数学课堂有效
- [求职职场]与贸易有关的知识产权协议
- [求职职场]【王风范】微演说·职场演说三
- [求职职场]新时代国珍健康大课堂
- [求职职场]群论期末考试复习题
- [求职职场]施工现场消防安全专项施工方案(范本)-
- [求职职场]初中物理光学知识点归纳完美版
- [求职职场]毕业设计总结与体会范文
- [求职职场]江南大学2018年上半年展示设计第1阶段
- [求职职场]景尚乡民兵参战支前保障方案
- [求职职场]【优质】2019年工会职工之家建设工作总
- [求职职场]数据库技术与应用—SQL Server 2008(第
- [求职职场]汽车变速箱构造与工作原理
- 首钢工业区工业遗产资源保护与再利用研
- 第4课 《大学》节选
- 2016程序文件——检验检测结果发布程序
- 2011年高考试题文言文阅读全解释__2011
- 化学是一门基础的自然科学
- 海外做市商制度的借鉴意义
- 外国建筑史复习资料(
- 七年级下思想品德期末综合测试(二)
- 思政课部2013年上学期教学工作总结
- 电大国际公法任务3 0004
- 《圆的认识》教学设计
- 中国轨道交通牵引变流器行业市场发展调
- 中泰证券#定期报告:坚守时代硬科技和
- 浅论企业财务管理与企业经营投资风险的
- 大功率半导体激光器光纤耦合技术调研报
- 中国传统家具的现状与发展探讨
- Broadcom数字电视芯片助海尔扩展高清电
- 新HSK4词汇练习 超全(五)
- 2013届高考数学单元考点复习12
- 雨霖铃精品课件




