网站大量收购闲置独家精品文档,联系QQ:2885784924

菜鸟学习51单片机之红外解码菜鸟学习51单片机之红外解码.pdf

菜鸟学习51单片机之红外解码菜鸟学习51单片机之红外解码.pdf

  1. 1、本文档共8页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
菜鸟学习51单片机之红外解码菜鸟学习51单片机之红外解码

菜鸟学习51单片机 while(1)世界 菜鸟学习51单片机 菜鸟学习51单片机 菜菜鸟鸟学学习习5511单单片片机机 红外解码 《菜鸟学习51单片机》由while(1)世界推出的非常简单的51 单片机教程。帮助刚接触单片机的童鞋快速入门。 这一讲是由Admin编写!读者有什么问题的可以在while(1) 世界的51版块发帖提问!红外遥控在生活中用的很多,那么有没有 想过运用红外遥控来做些小玩意呢! 红外遥控怎么解码呢?先来了解红外遥控发射出来的是什么 吧!遥控编码脉冲由前导码、8位用户码、8位用户码的反码、 8位操作码以及8位操作码的反码组成。这5个就是重点的啦! 前导码是一个遥控码的起始部分,由一个9ms的低电平(起始码) 和一个4. 5ms的高电平(结果码)组成,作为接受数据的准备脉冲。 (在做解码是,这个部分可以滤掉不用管)。 以脉宽为0. 56ms、周期为1. 12ms的组合表示二进制的“0”; 菜鸟学习51单片机 while(1)世界 以脉宽为1. 68ms、周期为2. 24ms的组合表示二进制的“1”。 这里我们做的是解码,所以我们看下面的两个图,就是一体化接收头 输出的码。‘1’和‘0’时的低电平时间相同,所以这里我们主要还 是判断高电平来解析现在到底是1还是0。如果高电平时间是1.685ms 则是‘1’如果高电平时间为0.56ms则是‘0’. 上面提到过,前导码可以滤掉不用管,那么我们解码就可以得到 后面的:8位的用户码,8位的用户码反码,8位操作码,8位的操作 码反码。 菜鸟学习51单片机 while(1)世界 上图就是我们用来接收红外遥控的万能接收头。将OUT脚接在外部 中断0的引脚上,也就是P3.2脚上就可以了。下面我们根据程序来 分析和学习。 采用外部中断管脚和红外接收头的信号线相连,中断方式为边 沿触发方式。并用定时器0计算中断的间隔时间,来区分前导码、二 进制的“1”、“0”码。 #includereg52.h #defineucharunsignedchar #defineuintunsignedint sbitHW=P3^2; //红外解码引脚 sbitled= P1^1; //来操作的灯 uint HW_TIME_H=0,HW_TIME_L=0; //之后计算时间用的 uchar HW_OK=0,HW_DAT[4]; //分别是解码成功的标志位和一个数组用来存解码 //得到的4个8位的数据 上面是最基本的一些定义了。我们只定义了两个脚,一个是用来红外 解码的,一个是LED灯的控制引脚。我们这个实验就做,用要控的一 个按键来控制灯。 这里使用的是外部中断0,下降沿触发中断。并且需要定时器0 来计算时间。所以,对中断和定时器配置如下: EA=1; //总中断开 IT0=1; //边沿触发方式 EX0=1; //外部中断使能 TMOD=0x01; // 定时器0工作方式1 TH0=0x00; //定时器初始值为0 TL0=0x00; //定时器初始值为0 菜鸟学习51单片机 while(1)世界 当万能接收头接收到红外遥控发来的数据后就会产生下降沿来 触发外部中断,那么就在中断里进行解码,下面就是中断里的解码 /******************************************************************* 11.0592Mhz晶振 9.5MS = 8755,,,,8.5MS = 7833 5MS = 460

文档评论(0)

tazhiq2 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档