首页 利用单片机进行红外线编解码遥控

利用单片机进行红外线编解码遥控

举报
开通vip

利用单片机进行红外线编解码遥控 相 NICS 约 WO 单 RL D 利用单片机进行红外线编 解码遥控 · 桂林电子工业学院 覃韦岭 · 目前 ,彩电和 VCD已走进千家万户 ,而其所带 的红外线 遥控器给这些家电的操作带来了极大的方便。对于单片机爱 好者来说 ,若能知道家电遥控器的原理并将其运用到单片机 制作中,将是一件非常美妙的事情 。比如家里常有几个遥控 器 ,操作起来还是有点烦 ,能不能用单片机将这些遥控器合 并起来?甚至拿遥控器来做单片机系统的无线键盘?答案是 肯定的。为了实现以上 目的,本文...

利用单片机进行红外线编解码遥控
相 NICS 约 WO 单 RL D 利用单片机进行红外线编 解码遥控 · 桂林电子工业学院 覃韦岭 · 目前 ,彩电和 VCD已走进千家万户 ,而其所带 的红外线 遥控器给这些家电的操作带来了极大的方便。对于单片机爱 好者来说 ,若能知道家电遥控器的原理并将其运用到单片机 制作中,将是一件非常美妙的事情 。比如家里常有几个遥控 器 ,操作起来还是有点烦 ,能不能用单片机将这些遥控器合 并起来?甚至拿遥控器来做单片机系统的无线键盘?答案是 肯定的。为了实现以上 目的,本文将首先介绍 目前家电遥控 器常用的编码方式,然后介绍怎样用单片机来实现红外线编、 解码遥控 。 本文只介绍彩电、VCD遥控器常用的编码方式 ,而空调 的遥控器由于带有温度值和时间等参数,码元非常长,本文不 做介绍。笔者利用红外线读码仪检测了大量的彩电、VCD遥 控器的编码后发现 ,大概有以下两种编码格式 (Format):第 一 种格式为 1913、9012、1621格式;第二种为3010格式,其 中尤以第一种格式用得最多。要识别一个遥控器的格式很简 单 ,只要把遥控器拆开,看它所用的集成块型号就知道了。比 (1)启动开始信号和停止信号子程序 (略) 启动信号 和停止信号的软件编写严格按照 I2C总线的时序进行 ,读者 可自行验证。 (2)AT24C01写字节子程序 WR_byte(略) 子程序 中首先启动开始信号,接着发送器件地址和引脚地址信息和 24C01存储区地址信息 Addr_lo,然后将一个字节 Zdata中的 内容写入到 AddR—lo地址区,最后启动停止信号使整个写 字节过程结束 ,其 中Shout是 8个 bit即 1个字节的移位写 入 子程序 。 (3)读任意地址区内容的子程序 ILl9一RAND (略 ) 子程序中首先启动开始信号 ,按着发送器件地址和存储地址 信息,随后调用 Rd—curr读地址内容子程序 ,将读出内容存 ⑥ 放 在累加 器 A中 。 (4)AT24c01读写程序举例 下面以配套的实验板 为例来简单介绍一下 如何 调用上述子 程序去完成数据 的 读写 。 例:将数据 50H写入到 AT24C0l的0lH地址区,断电 片刻之后 重 新上 电 ,再 读 出 0l地 址 内容 ,以验 证 AT24C01 的数据断电保存功能,具体程序见本刊网站。该程序中入口 参数 FADDR存放的是 AT24C01的器件地址 ,累加器 A存 放 的是 AT24C01的引 脚地 址 ,Addr_Lo为读 写 AT24C01的 存储 区地址 ,Zdata存放 具体 数据 。调用 WR—byte写字 节子 程序,将 Zdata内容 50H写入 AT24C01的 0lH存储 区;调 用 RD—rand将 AT24C01存储区 0lH的内容读入到单片机的 累加 器 A中 。 AT24C01在 电子钟定时功能中的应用 上讲 中,我们向读者介绍了一个可以显示和定时的电 子钟程序,具体应用中我们会发现 :该程序的定时时刻是在 程序中写死的,没有记忆功能 ,不能任意设置。下面我们通 过增加一片 AT24C01 E PROM数据存储器,使得定时时刻 可以任意设置 ,并且在掉电后仍能保存。为了区分显示时问 和定时时间 ,我们在上讲 的基础上又增加 了判断键 K4,按 下 K4,再 按 M—key、H—key,则设 置定 时 时 刻 ;不按 K4, 按 M—key、H—key、S—key仍设置显示时问。图 6为其程序 流程 快递问题件怎么处理流程河南自建厂房流程下载关于规范招聘需求审批流程制作流程表下载邮件下载流程设计 图,详细的程序代码可参考本刊网站。 总之,以 I2C串行总线接口为代 关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf 的一些新型的数据存储芯 片的出现 ,打破了传统的数据存储和保护模式,简化了电路 设计 领导形象设计圆作业设计ao工艺污水处理厂设计附属工程施工组织设计清扫机器人结构设计 ,提高了系统的可靠性。 编者 附记:配合本讲座 ,本刊读者服务部配套供应单 片机仿真器及开发板,其邮购广告见 82页。 4- 维普资讯 http://www.cqvip.com 如 F~PD1621、SAA3010,其格式 就是 1621、3010格 式 。下 面 分别介绍这两种编码格式。 第一种格式以 1621为例,当按下遥控器上的某个按键 时,遥控器将发射一帧数据,帧数据的编码格式由三部分组 成 :引 导码 (Lead code)、客 户码 (Custom code)和数 据码 (Data code),见图 1。对于一个遥控器来说,每个按键所发射 的帧数据 的客户码 总是一样 的 ,有 区别 的只是 数据码 。其 中 9012和 1913、1621格式的唯一区别就是引导码的高电平宽度 不 一样 ,9012格 式为 4.5ms,1913和 1621格式 为 9ms。帧结 构中的客户码和数据码各有两个字节,第一个字节和第二个 字节互为按位取反 ,其中客户码的高4位与低 4位又互为按 位取反 ,如帧结构 0FFOAA55。 ‘0’码 和 ‘1’码 的结 构见图 2, ‘0’码 由 0.56ms高 电平 和 0.565ms低 电平组 合而成 ; ‘1’码由 0.56ms高电平和 1.69ms低电平组合而成。码元的高 电平信号采用 38kHz矩形波 (载波)调制发射 ,载波 占空比 (Duty)为 1/3,低电平无信号发射。 ① !:!: 一 1.125ms— ② 一 2.25ms —— 第二种格式 3010与第一种格式截然不同,它是以信号脉 冲的上升沿和下降沿来分别表示 ‘1’码和 ‘0’码的。其帧格 式见图3,每一帧由起始位 (Start bit)、扩展位 (Enlarged bit)、 翻转位 (Tossle bit)、系统位 (System bit)和数据位 (Data bit) 组成。其位码结构见图 4。码元高电平也是采用 38kHz载波调 制发射 。 起 扩 始 展 位 位 冀 --—一系统位————’卜 数据位—— 位 :s4 s3 s2 S1 SO D5 Dj4 D3 D2 DI D0 : i 册 八 4仆 23 466ms ⑨ ④ — 1.674ms I : 前面我们了解了遥控器的编码格式 ,那么我们用单片机 来进行 编 、解码 就是一个 怎样来 写程 序的 问 快递公司问题件快递公司问题件货款处理关于圆的周长面积重点题型关于解方程组的题及答案关于南海问题 ,而硬 件非 常 简单 。我们以 1621格式为例,看看怎样用单片机来模拟它以 及程序调试的一些技巧 。单片机使用 AT89C2051,晶振 为 12MI4z,红外线发射电路如图 6(a)所示。我们仅使用 了单 片机 的一个 I/O 口,且 不必加 任何 驱动 当要发射信号‘ 码 二 ] 时 ,事实上 P3·0口上 的电平 状态如 0 38 .56 kH z s一 图5所示。当码元为高电平时,发 卜—一 1-125ms—■ 射 载 波 信 号 ;码 元 为 低 电平 时 , P3.0口为高电平 ,不发射信号。38kHz载波的周期为 26-3微 秒,由于单片机最多只能精确到 1微秒 ,经笔者实践,载波周 期取 27微秒时发射信号最稳定,发射距离大于8米:编程的 关键是 如何准确 地在 P3.0口上 产生 38kHz载 波 :对于用 C51 编的程序,由于不知道其汇编代码,很难精确地取得周期为微 秒级的信号,即使是用定时器,进出中断程序以及重装计数初 值都 要耗 费一定 的时间,也难精确到微秒 。笔者采用循环延时 的 方法 快递客服问题件处理详细方法山木方法pdf计算方法pdf华与华方法下载八字理论方法下载 来产 生载 波 ,用断点 法来 调试 。通 常使 用的 Keil c编 译器都 有程序调试功能。调试程序时启 动定 时器 0,并设 为方 式 1,不必开放 中断 ,在产生载 波的循环子程序里设置一个断 点,当程序第一次运行到断点时,记下计数器的值,接着继续 运行程序 ;再次运行到断点时又记 下计数器 的值,两值相减就 是载 波周期 了,反复改 变延 时时 间直至载 波周期 为 27微秒 当我们没有测量仪器时,这种方法不失为测量信号周期和时 间的一种好方法 。当然 ,码元 的宽度 亦可采用这 种方法调试 : 在 本 刊 的网站 上给 出 了笔 者 编 的例 程 (程 序 1),该 程序 在 Keil c编译器 6.23版上编 译通过 。 利用单片机对红外线信号进行解码也很简单,解码电路如图6 (b),一体化红外线接 收头内部集成 有解调 、 信号 放 大 和 整形 等 电 路 ,要 注 意 的是 在 没 有 红 外线 信 号 时 ,其 输 出端为高电平 ,有 信号时为低 电平 ,故 其输出信号电平正好与发射端相反。因而接收头输出的码元 信号电平有区别的是高电平宽度不一样, ‘0’码高电平宽度 为 0.565ms, ‘1’码 为 1.69ms。本 例程 就是 测量 高电平 宽 度 来识别码元的,程序取帧数据的最蜃一个字节就可以识别不 同的按键,客户码和数据码的第一字节舍弃掉,最后将数据输 出到 P1口。程序 见本 刊网站 (程序 2)。 对利用单片机进行红外遥控感兴趣的读者 ,可以对笔者 所提供的程序进行扩展 ,实现 自己想要的功能。读者还可以自 己定义数据格式 。需要 注意的是 ,红外线的载波周期一定要精 确到微秒 ,否则发射距 离极近且容易误码 ,而码元电平的宽度 可允许大到 80微秒的误差。通过单片机的这个应用实例 ,可 以看 出只要 掌握单 片机的 一些编程 技巧 ,并且 在制作 过程 中 多加思考,往往可以用最简单的硬件实现复杂的功能 ,这也是 许多单片机初学者需要做到的。 - 3l ELECTRON●CS WORLD ●■●一 维普资讯 http://www.cqvip.com
本文档为【利用单片机进行红外线编解码遥控】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_380412
暂无简介~
格式:pdf
大小:95KB
软件:PDF阅读器
页数:2
分类:互联网
上传时间:2011-12-15
浏览量:58