C51单片机红外解码程序:汇编与C语言实现
版权申诉
51 浏览量
更新于2024-06-25
收藏 17KB DOCX 举报
"c51单片机红外解码程序汇编版和c语言版.docx"
本文档提供了基于C51单片机的红外解码程序,分别使用汇编语言和C语言编写。这里主要讨论的是汇编版的解码程序。
在红外遥控系统中,解码是至关重要的一步,它负责将接收到的红外信号转换为可理解的数据。这个程序采用纯软件解码的方式,即通过监测电平变化和时间间隔来解析信号,虽然这种方法可能会占用更多的CPU资源,但它降低了对硬件的要求,尤其是不需要额外的专用解码芯片。
程序从ORG0000H开始,设置中断服务程序入口,并配置P3口的某些引脚作为红外接收头的数据接口、控制信号等。接着在主程序MAIN中,首先调用初始化函数CSH,然后设定定时器T0的工作模式和中断。在信号接收前,关闭信号指示灯并清零T0中断和接收信号时间判断标志位。
解码的核心部分在于等待电平变化开始解码。当检测到电平由高变低时,打开信号指示灯,开始接收数据。程序通过一系列的循环和延时判断,确保信号的稳定性和正确性。例如,通过检测连续的高电平和低电平时间来区分0和1的位数据,同时设置接收允许时间限制以防止干扰。每接收一个字节数据后,会进行位移操作并将数据存储在特定的内存位置。
在接收完整个数据包(通常是四个字节)后,程序会进行键值确认,检查接收到的数据是否符合预期,如果匹配则执行相应的操作,否则视为无效信号并重新进入解码状态。
这个汇编版的红外解码程序展示了如何利用C51单片机的中断和定时器功能来实现红外遥控信号的解码,其设计思路清晰,逻辑严谨,适合对单片机编程有一定基础的读者学习和参考。
2021-10-11 上传
2021-10-02 上传
2022-07-11 上传
老帽爬新坡
- 粉丝: 98
- 资源: 2万+
最新资源
- 先进算法讲义-中科大.pdf 需要的下吧
- TD-SCDMA Principle -李世鹤
- rhce5 启动引导troubleshooting实验笔记
- 软件体系结构(ppt版)
- C和C++嵌入式系统编程
- Java企业版中性能调节的最佳实践.pdf
- Log4j中文手册2006_04_07_205056_ZCxoePRlHJ_2.pdf
- AutoCADAutoCAD 2005中文版是美国AutoDesk公司推出的AutoCAD软件的最新版本,它在以前版本的强大功能之上又增加了新的功能。通过本章的学习,读者将对AutoCAD 2005中文版有一个整体上的了解,学会安装和启动的方法,初步了解AutoCAD 2005中文版的界面组成。
- 全国等级考试 二级vf机试题
- The Definitive Guide to Grails Second Edition
- LINUX电子书
- IGBT 应用系统资料!
- 单片机恒温箱温度控制系统的设计
- ARM的嵌入式系统硬件结构设计经典
- MATLAB偏微分方程工具箱简介
- TestLink1.7RC3使用说明书.doc