基于51单片机智能红外遥控器的设计.doc_第1页
基于51单片机智能红外遥控器的设计.doc_第2页
基于51单片机智能红外遥控器的设计.doc_第3页
基于51单片机智能红外遥控器的设计.doc_第4页
基于51单片机智能红外遥控器的设计.doc_第5页
已阅读5页,还剩49页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

65116511 青岛农业大学毕业论文 设计 任务青岛农业大学毕业论文 设计 任务 书书 论文 设计 题目 简易智能红外遥控器的设计 要求完成时间 论文 设计 内容 需明确列出研究的问题 本设计要求设计一 简易智能红外遥控器 需要解决以下问题 1 熟悉红外遥控器的工作原理 2 掌握红外通信的编解码原理及至少一种串行通信数据校验算法 3 实现一个遥控器对至少 2 台家电设备的控制 4 绘制系统电气原理图及 PCB 图 5 画出系统的软件流程图并编写系统程序 6 尽量做出样机并完成系统调试 资料 数据 技术水平等方面的要求 1 查阅至少 10 篇以上与课题相关资料 至少有两篇是英文文献 2 原理图的绘制要求规范 3 绘制系统 PCB 图 4 编写并调试系统程序 5 完成实物演示 6 独立完成论文 7 论文要求打印 指导教师签名 年 月 日 目 录 摘 要 I ABSTRACT II 一 绪论 1 1 1 课题研究的背景 1 1 2 课题研究的目的 1 1 3 课题研究的内容 1 二 系统概述 3 2 1 国外发展概况 3 2 2 国内发展概况 4 三 智能红外遥控器的硬件设计 5 3 1 主要元器件介绍 5 3 1 1 STC 系列单片机介绍 5 3 1 2 红外发光二极管 6 3 1 3 红外接收头 7 3 1 4 E2PROM AT24C02 的应用 8 3 2 系统设计思路 12 3 2 1 红外遥控器组成 14 3 2 2 红外遥控器的框图 15 3 3 硬件电路设计 15 3 3 1 发射端硬件电路 15 3 3 2 接收端硬件电路 16 四 智能红外遥控器的软件设计 18 4 1 编解码约定与存储 18 4 1 1 发射编码部分 18 4 1 2 接收解码部分 21 4 1 3 存储部分 23 4 2 子程序介绍 25 4 2 1 发射子程序 25 4 2 2 接收子程序 29 五 总结与展望 33 5 1 总结 33 5 2 本文的不足 33 参考文献 34 致 谢 35 附录一 原理图 36 附录二 程序 37 I 简易智能红外遥控器的设计 摘 要 红外遥控技术能给人们日常生活带来更加人性化的关怀和体贴 同时还兼具节能与安 防等辅助功能 相对应的红外遥控器与人们的日常生活息息相关 是人们使用频率最高的 智能化设备 然而市场上的绝大部分遥控器都是针对各自特定的遥控对象所设置的 不能 直接应用于通用的智能仪器控制 针对不同设备的红外遥控器不兼容的问题 本设计提出 了一种智能红外遥控器的设计方案 能同时控制至少两台设备 系统主要包括红外发射模 块 接收模块 存储模块 本设计用STC89C54作为主控芯片 将发射信号调制到38KHz 使得红外接收头HS0038能够接收到 自行编程解码 显示 并通过控制芯片把解出的码值 存储到E2PROM AT24C02中 简易方便 智能兼容是本设计的特点 关键词 关键词 红外 遥控器 编解码 E2PROM II Simple design of intelligent infrared remote control Abstract The technology of infrared remote control can bring people s daily life more personalized care and thoughtfulness and it also has other auxiliary functions of the energy efficiency and safety The corresponding infrared remote controller is closely related to people s daily lives which is used most frequently by people among the intelligent equipment However the vast majority of the remote controller at the market are designed for their particular remote object which can not be directly applied to general purpose intelligent instrument control For different devices are not compatible infrared remote control problems this design presents a scheme of an intelligent infrared remote controller and can also control at least two appliances System includes infrared transmitter module receiver module storage module The design uses STC89C54 as the main chip modulates the transmittion signal to 38KHz which makes integrated infrared remote receiver HS0038 can receive and calculate the code values by their own programming solutions and then show up and store the code value into the E2PROM AT24C02 by the controlling chip Simply and convenient intelligent compatible are all this design s features Keywords Infrared remote control codec E2PROM 青岛农业大学机电工程学院本科毕业设计 论文 1 一一 绪论 1 1 课题研究的背景 遥控技术能给人们日常生活带来更加人性化的关怀和体贴 同时还兼具节能与安防 等一些的辅助功能 在今后的几年当中 与人们的日常生活息息相关 是人们使用频率 最高的智能化设备 自从人们发现了无线电波 就开始用无线电来遥控了 70年代研制出的红外遥控技 术 随着大规模集成电路和微处理技术的发展和成熟 红外线遥控系统也迅速发展并得 到广泛的应用 特别是在家用电器上的成功应用 给人们的工作 生活和娱乐带来了极 大的方便 随着城市居民生活水平的提高 家庭里家用电器的种类和数量逐步增加 与 之配套的红外遥控发射器也越来越多 目前家庭设备中已经有许多设备是用红外遥控器 进行控制的 例如空调 电视录像等 1 然而市场上的绝大部分遥控器都是针对各自特定 的遥控对象 不能直接应用于通用的智能仪器研发及其更一般的控制场合 通常红外遥 控器使用专用配对编码 对其他型号的编码芯片的编码则不能识别 因此不同的遥控器 没有互换性 也就说不同设备的红外遥控器并不兼容 一个遥控器不能控制其他设备 2 用户深感不便 并且不兼容问题大大影响了遥控器的推广使用 因而对智能型红外遥控 器的研究是很有必要的也是很有实用意义的 利用单片机作为主控芯片 结合红外遥控用户码的设置 自行设计编码和解码程序 实现一个遥控器控制多台设备的这种方法就应运而生了 本设计提出了一种智能遥红外 控器的设计方案 并能同时控制至少两台家电设备体现出了多功能 兼容性 使得本设 计具有很大的实用意义 1 2 课题研究的目的 利用单片机作为主控芯片 结合红外遥控用户码的设置 自行设计编码和解码程序 实现一个遥控器控制多台设备 来解决市场上普通遥控器不兼容问题的瓶颈 本论文提 出了一种智能遥红外控器的设计方案 并能同时控制至少两台家电设备体现出了多功能 兼容性 1 3 课题研究的内容 本设计研究一种新型的简易智能遥控器 要求能一个遥控器能控制多台设备 可在 青岛农业大学机电工程学院本科毕业设计 论文 2 多种场合应用 本设计中模拟遥控器的功能 要求系统实现以下功能 1 红外遥控器的发送模块有显示功能 接收电路使用一体化红外接收头HS0038 并把接收到的数据显示出来 2 把接收到的数据能存储起来包括在一些意外情况下 如掉电等 使用芯片为 AT24C02 能在开机时显示上一次的数据 青岛农业大学机电工程学院本科毕业设计 论文 3 二二 系统概述 红外遥控器的应用非常广泛 是目前日常生活控制中应用较多的一类产品 并且正 越来越多的应用于工业控制 国内外许多科研单位和技术公司都在积极研制 目前研制 已经相当成熟 而且种类不断增多 性能越来越好 功能也越来越强大 对比国内的发展概况就会发现在国内红外遥控技术发展起步较晚 不过应用前景很 广泛 这也使得本设计更加有意义 2 1 国外发展概况 60 年代初 一些发达国家开始研究民用产品的遥控技术 但由于受当时技术条件的 限制 遥控技术发展很缓慢 70 年代末 随着大规模集成电路和计算机技术的发展 遥 控技术才得到快速的发展 在遥控方式上大体经历了从有线到无线的超声波 从振动子 到红外线 再到使用总线的微机红外遥控这样几个阶段 无论采用何种方式 准确无误 传输信号 最终达到满意的控制效果是非常重要的 最初的无线遥控装置采用的是电磁 波传输信号 由于电磁波容易产生干扰 也易受干扰 因此逐渐采用超声波和红外线媒 介来传输信号 与红外线相比 超声传感器频带窄 所能携带的信息量少 易受干扰而 引起误动作 较为理想的是光控方式 逐渐采用红外线的遥控方式取代了超声波遥控方 式 出现了红外线多功能遥控器 成为当今时代的主流 3 由于红外线在频谱上居于可见 光之外 所以抗干扰性强 具有光波的直线传播特性 不易产生相互间的干扰 是很好 的信息传输媒体 信息可以直接对红外光进行调制传输 例如 信息直接调制红外光的 强弱进行传输 也可以用红外线产生一定频率的载波 再用信息对载波进调制 接收端 再去掉载波 取到信息 从信息的可靠传输来说 后一种方法更好 这就是我们今天看 到的大多数红外遥控器所采用的方法 红外遥控由来已久 但是进入 90 年代 这一遥控技术又有新的发展 应用范围更加广泛 1995 年 一个由部件 计算机系统 外围设备和电信厂商组成的大型集团 红外数据 协会 IrDA 就红外通信的一套标准达成一致 现在约有 120 家以上的厂商支持红外通信 标准 其中的许多厂商已推出符合红外通信标准并支持 Windows 95 的产品 红外数据 协会开发的这种新的无线通信标准还得到 PC 机产业的有力支持 主要的开发厂商 如微 软 苹果 东芝和惠普公司 已推出了在计算机之间采用这种高速红外数据通信的 PC 机 笔记本计算机 打印机和手持式个人数字助理 PDA 设备 青岛农业大学机电工程学院本科毕业设计 论文 4 此外 红外遥控的连通性已用在大多数新的笔记本计算机中 并成为一种最具成本 效益和便于使用的无线通信技术而问鼎市场 2 2 国内发展概况 我国对红外技术的研究及应用起步较晚 国内许多科研单位和技术公司都在积极研 制 目前红外遥控正越来越多的应用于工业控制而且种类不断增多 性能越来越好 功 能也越来越强大 常用的红外遥控系统一般分发射和接收两个部分 发射部分的主要元 件为红外发光二极管 它实际上是一只特殊的发光二极管 由于其内部材料不同于普通 发光二极管 因而在其两端施加一定电压时 它便发出的是红外线而不是可见光 目前大量的使用的红外发光二极管发出的红外线波长为940mm左右 外形与普通发 光二极管相同 只是颜色不同 红外发光二极管一般有黑色 深蓝 透明三种颜色 载 波频率为38KHz这是由发射端所使用的455KHz晶振来决定的 在发射端要对晶振进行整 数分频 分频系数一般取12 所以455KHz 12 38KHz 红外遥控的特点是不影响周边环境的 不干扰其他电气设备 由于其无法穿透墙壁 故不同房间的家用电器可使用通用的遥控器而不会产生相互干扰 电路调试简单 只要 按给定电路连接无误 一般不需任何调试即可投入工作 可进行多路遥控 由于各生产 厂家生产了大量红外遥控专用集成电路 需要时按图索骥即可 并且红外遥控是一种无 线 非接触控制技术 具有抗干扰能力强 信息传输可靠 功耗低 成本低 易实现等 显著优点 被诸多电子设备特别是家用电器广泛采用 并越来越多的应用到计算机系统 中 4 因此 现在红外遥控在家用电器 室内近距离 小于10米 遥控中得到了广泛的应 用 青岛农业大学机电工程学院本科毕业设计 论文 5 三 智能红外遥控器的硬件设计 硬件设计主要包括两个部分 发射电路和接收电路 总体来说本设计的硬件并不是 很难 但是要注意细节 发射电路中和接收电路中都有显示电路 在接收电路中还有存 储电路等 硬件设计的好坏是本设计能否成功的关键 3 1 主要元器件介绍 任何一个设计都必须进行元器件的选择 元器件选择的正确与否直接影响整个设计 是否能正常工作 下面就把本设计中所用到的芯片介绍如下 3 1 1 STC 系列单片机介绍 STC 系列单片机的优点 1 STC12 系列单片机为增强型 8051 芯片 单时钟 机器周期 指令代码完全兼容传 统 8051 单片机 2 工作频率范围 0 35 MHz 相当于普通 8051 的 0 420MHz 实际工作频率可达 48MHz 3 用户应用程序空间 12K 10K 8K 6K 4K 2K 1K 字节 4 片上集成 512 字节 RAM 5 ISP 在系统可编程 IAP 在应用可编程 无需专用编程器 无需专用仿真器可 通过串口 P3 0 P3 1 直接下载用户程序 数秒即可完成一片 6 E2PROM 功能 7 具有看门狗电路 8 内部集成 MAX810 专用复位电路 外部晶体 20M 以下时 可省外部复位电路 9 时钟源 外部高精度晶体 时钟 内部 R C 振荡器 用户在下载用户程序时 可 选择是使用内部 R C 振荡器还是外部晶体 时钟 常温下内部 R C 振荡器频率为 5 2MHz 6 8MHz 精度要求不高时 可选择使用内部时钟 但因为有制造误差和温漂 应认为是 4MHz 8MHz 10 外部中断 2 路 下降沿中断或低电平触发中断 Power Down 模式可由外部中断 唤醒 11 PWM 4 路 PCA 可编程计数器阵列 4 路 青岛农业大学机电工程学院本科毕业设计 论文 6 也可用来当 4 路 D A 使用 也可用来再实现 4 个定时器 也可用来再实现 4 个外部中断 上升沿中断 下降沿中断均可分别或同时支持 12 A D 转换 10 位精度 ADC 共 8 路 13 通用全双工异步串行口 UART 14 SPI 同步通信口 主模式 从模式 15 工作温度范围 0 75 40 85 从上面容易看出 STC 单片机是一款增强型 51 单片机 完全兼容 MCS 51 还增加 了新的功能 比如新增两级中断优先级 多一个外中断 内置 E2PROM 硬件看门狗 具有掉电模式 512B 内存等 还支持 ISP 下载 不用编程器 只要一个 MAX232 和一些 廉价的元件就能写程序 可擦写 10 万次 5 因此是一款很好用的单片机 其引脚图如下图 3 1 40 VCC 39 P0 0 38 P0 1 37 P0 2 36 P0 3 35 P0 4 34 P0 5 33 P0 6 32 P0 7 31 EA 30 ALE 29 PSEN 28 P2 7 27 P2 6 26 P2 5 25 P2 4 24 P2 3 23 P2 2 21 P2 0 22 P2 1 1 P1 0 2 P1 1 3 P1 2 4 P1 3 5 P1 4 6 P1 5 7 P1 6 8 P1 7 9 RST 10 P3 0 11 P3 1 12 P3 2 13 P3 3 14 P3 4 15 P3 5 16 P3 6 17 P3 7 18 X1 19 X2 20 GND STC89C54 图3 1单片机引脚图 3 1 2 红外发光二极管 红外发光二极管实际上是一只特殊的发光二极管 由于其内部材料不同于普通发光 二极管 因而在其两端施加一定电压时 它便发出的是红外线而不是可见光 目前大量 使用的红外发光二极管发出的红外线波长为 940nm 左右 外形与普通发光二极管相同 只是颜色不同 常用的红外发光二极管 如 SE303 PH303 其外形和发光二极管 LED 相似 发出红外光 近红外线约 0 93 m 管压降约 1 4V 工作电流一般小于 20mA 青岛农业大学机电工程学院本科毕业设计 论文 7 为了适应不同的工作电压 回路中常串有限流电阻 红外线发射与接收的方式有两种 其一是直射式 其二是反射式 直射式指发光管 和接收管相对安放在发射与受控物的两端 中间相距一定距离 反射式指发光管和接收 管并列一起 平时接收管始终无光照 只在发光管发出的红外光遇到反射物时 接收管 收到反射回来的红外线才工作 其参数如下表 3 1 所示 表 3 1 红外发射管参数 5mmLED 红外发射管 波长 940nm 峰值波长 p nm 正向电压 VF V 反向电流 Ir uA 发射功率 P mw IF 20AIF 20mAVR 5VIF 20mA 封装形式 TypTypMaxMaxTypMax 视角 无色透明9391 271 410121545 3 1 3 红外接收头 目前 对于进行了调制的红外遥控信号 通常是采用一体化红外线接收头进行调解 一体化红外线接收头将红外发光二极管 低噪音放大器 限幅器 带通滤波器 解调器 以及整形驱动电路等集成在一起 一体化红外线接收头体积小 灵敏度高 外接元件少 抗干扰能力强 使用十分方便 红外接收头的主要功能为 IC 化的一种受光元件 其内部是将光电二极管 俗称接收 管 和集成 IC 共同组合封装而成 其 IC 设计主要以类比式控制 一班可以接收 850 1100nm 波段的红外光 其中主要以接收 940nm 为主 红外接收头的工作原理为 内置接收管将红外发射管发射出来的光信号转换为微弱 的电信号 此信号经由 IC 内部放大器进行放大 然后通过自动增益控制 带通滤波 解 调 波形整形后还原为遥控器发射出的原始编码 经由接收头的信号输出脚输入到控制 芯片上 然后由控制芯片解出码值 接收部分的红外接收管是一种光敏二极管 在实际应用中要给红外接收二极管加反 向偏压 它才能正常工作 亦即红外接收二极管在电路中应用时是反向运用 这样才能 获得较高的灵敏度 红外接收二极管一般有 圆形和方形两种 青岛农业大学机电工程学院本科毕业设计 论文 8 成品红外接收头的优点是不需要复杂的调试和外壳屏蔽 实用起来如同一只三极管 非常方面 但在使用时注意成品红外接收头的载波频率 红外遥控常用的载波频率为 38KHz 这是由发射端所使用的 455KHz 晶振来决定的 在发射端要对晶振进行整数分频 分频系数一般取 12 所以 455KHz 12 37 9 KHz 38KHz 也有一些遥控系统采用 36KHz 40KHz 56KHz 等 一般由发射端晶振的振荡频率来决定 在本系统中采用红外一体化接收头 HS0038 一体化的红外接收装置将遥控信号的接 收 放大 检波 整形集于一身 并且输出可以让单片机识别的 TTL 信号 这样大大简 化了接收电路的复杂程度和电路的设计工作 方便使用 HS0038 黑色环氧树脂封装 不 受日光 荧光灯等光源干扰 内附磁屏蔽 功耗低 灵敏度高 在用小功率发射管发射 信号情况下 其接收距离可达 35m 它能与 TTL COMS 电路兼容 6 HS0038 为直立侧 面收光型 它接收红外信号频率为 38 KHz 周期约 26 s 同时能对信号进行放大 检波 整形 得到 TTL 电平的编码信号 三个管脚分别是地 5 V 电源 解调信号输出端 外观图及引脚图如图 3 2 所示 一体化的红外接收头 HS0038 它将红外光敏二极管 专 用前置放大器以及解调电路等集成在同一基片上 主要特点就是它具有体积小 功耗低 灵敏度高 无需外部元件等 发发 1 发发 VCC 发发 GND 图 3 2 红外接收头引脚图 3 1 4 E2PROM AT24C02 的应用 1 I2C 总线简介 I2C 总线是一种用于 IC 器件之间连接的二线制总线 它通过 SDA 串行数据线 及 SCL 串行时钟线 两根线在连到总线上的器件之间传送信息 并根据地址识别每个器件 不管是单片机 存储器 LCD 驱动器还是键盘接口 I2C 总线协议如下 1 只有在总线空闲时才能启动数据的传送 2 在数据传送过程中 当时钟线为高电平时 数据线必须保持稳定 不允许有跳 青岛农业大学机电工程学院本科毕业设计 论文 9 变 时钟线为高电平时 数据线上的任何变化 都将被看做是总线的起始或结束信号 采用 I2C 总线标准的单片机或 IC 器件 其内部不仅有 I2C 接口电路 而且将内部各 单元电路按功能划分为若干相对独立的模块 通过软件寻址实现片选 减少了器件片选 线的连接 CPU 不仅能通过指令将某个功能单元电路挂靠或脱离总线 还可对该单元的 工作状况进行检测 从而实现对硬件系统的既简单又灵活的扩展与控制 1 双向传输的接口特性 传统的单片机串行接口的发送和接收一般都各用一条线 如 MCS51 系列的 TXD 和 RXD 而 I2C 总线则根据器件的功能通过软件程序使其可工作于发送或接收方式 当某个 器件向总线上发送信息时 它就是发送器 也叫主器件 而当其从总线上接收信息时 又 成为接收器 也叫从器件 主器件用于启动总线上传送数据并产生时钟以开放传送的器件 此时任何被寻址的器件均被认为是从器件 I2C 总线的控制完全由挂接在总线上的主器件 送出的地址和数据决定 在总线上 既没有中心机 也没有优先机 总线上主和从 即发送和接收 的关系不是一成不变的 而是取决于此时数据传送的方 向 SDA 和 SCL 均为双向 I O 线 通过上拉电阻接正电源 当总线空闲时 两根线都是 高电平 连接总线的器件的输出级必须是集电极或漏极开路 以具有线 与 功能 I2C 总线的数据传送速率在标准工作方式下为 100kbit s 在快速方式下 最高传送速率可达 400kbit s 2 I2C 总线上的时钟信号 在 I2C 总线上传送信息时的时钟同步信号是由挂接在 SCL 时钟线上的所有器件的逻 辑 与 完成的 SCL 线上由高电平到低电平的跳变将影响到这些器件 一旦某个器件 的时钟信号下跳为低电平 将使 SCL 线一直保持低电平 使 SCL 线上的所有器件开始低 电平期 此时 低电平周期短的器件的时钟由低至高的跳变并不能影响 SCL 线的状态 于是这些器件将进入高电平等待的状态 7 当所有器件的时钟信号都上跳为高电平时 低电平期结束 SCL 线被释放返回高电 平 即所有的器件都同时开始它们的高电平期 其后 第一个结束高电平期的器件又将 SCL 线拉成低电平 这样就在 SCL 线上产生一个同步时钟 可见 时钟低电平时间由时 钟低电平期最长的器件确定 而时钟高电平时间由时钟高电平期最短的器件确定 3 总线竞争的仲裁 总线上可能挂接有多个器件 有时会发生两个或多个主器件同时想占用总线的情况 例如 多单片机系统中 可能在某一时刻有两个单片机要同时向总线发送数据 这种情 青岛农业大学机电工程学院本科毕业设计 论文 10 况叫做总线竞争 I2C 总线具有多主控能力 可以对发生在 SDA 线上的总线竞争进行仲 裁 其仲裁原则是这样的 当多个主器件同时想占用总线时 如果某个主器件发送高电 平 而另一个主器件发送低电平 则发送电平与此时 SDA 总线电平不符的那个器件将自 动关闭其输出级 总线竞争的仲裁是在两个层次上进行的 首先是地址位的比较 如果 主器件寻址同一个从器件 则进入数据位的比较 从而确保了竞争仲裁的可靠性 8 由于 是利用 I2C 总线上的信息进行仲裁 因此不会造成信息的丢失 2 E2PROM 24C02 芯片 AT24C02 是美国 ATMEL 公司的低功耗 CMOS 串行 E2PROM 特点及其引脚介绍如 下 1 AT 24C02 的特性 与 400KHz I2C 总线兼容 1 8 到 6 0 伏工作电压范围 低功耗 CMOS 技术 页写保护功能 页写缓冲器 自定时擦写周期 1 000 000 编程擦除周期 可保存数据 100 年 AT24C02 是带有 I2C 总线接口的 E2PROM 存储器 具有掉电记忆的功能 并且可以 象普通 RAM 一样用程序改写 它的容量是 256 个字节 00h 0ffh 有 A2 A1 A0 三 位地址 可见 I2C 总线上可以连接 8 片 AT24C02 它的寻址字节是 1010 A2A1A0 R W 9 板上面 24C02 的电路连接如图 3 6 所示 2 AT24C02 的引脚及引脚功能介绍 引脚电路图接法如图 3 3 图 3 3AT24C02 的引脚连接图 青岛农业大学机电工程学院本科毕业设计 论文 11 引脚简介 VCC GND 电源 地引脚 A2A1A0 地址引脚 SCLK SDA 通信引脚 WP 写保护引脚 从上面的电路连接知 A2A1A0 111 可见如果要对 AT24C02 进行写操作 寻址字 节是 1010 111 0 如果对 AT24C02 进行读操作 寻址字节是 1010 111 1 用单片机的 P1 1 脚作为串行时钟线 用 P1 2 脚作串行数据线 其读写周期范围如下表 3 2 所示 总线时序如图 3 4 写周期时序如图 3 5 应答时 序如图 3 6 表 3 2 AT24C02 的读写周期 1 8V 2 5V4 5V 5 5V 符号参数 最小最大最小最大 单位 Fscl时钟频率100400KHZ T1SCL SDA 输入的 噪声抑制时间 200200ns tAASCL 变低至 SDA 数据输出及应答信 号 3 51us t BUF新的发送开始前总 线空闲时间 4 71 2us tHD STA起始信号保持电平40 6us t LOW 时钟低电平周期4 71 2us t HIGH时钟高电平周期40 6us t SU STA起始信号建立时间4 70 6us t HD DAT数据输出保持时间00ns t SU1 DAT数据输出建立时间5050ns t RSDA 及 SCL 上升 时间 10 3us t FSDA 及 SCL 下降300300ns 青岛农业大学机电工程学院本科毕业设计 论文 12 时间 t SU STD停止信号建立时间40 6us t DH数据输出保持时间100100ns 总线时序如图 3 4 图 3 4 读写总线时序 写周期时序如下图 3 5 图 3 5 AT24C02 的写时序 应答时序如下图 3 6 图 3 6 AT24C02 的应答时序 青岛农业大学机电工程学院本科毕业设计 论文 13 3 2 系统设计思路 遥控器其核心问题就是如何编码 将需要实现的操作指令例如选台 快进等事先编 码 设备接收后解码再控制有关部件执行相应的动作 显然 接收电路及 CPU 也是与遥 控器的编码一起配套设计的 编码是通过载波输出的 即所有的脉冲信号均调制在载波 上 载波频率通常为 38KHz 用电信号驱动红外发光二极管 将电信号变成光信号发射 出去 这就是红外光 波长范围在 840nm 到 960nm 之间 在接收端 需要反过来通过 光电二极管将红外线光信号转成电信号 经放大 整形 解调等步骤 最后还原成原来 的脉冲编码信号 完成遥控指令的传递 红外线发射管通常的发射角度为 30 45 度之间 角度大距离就短 反之亦然 遥控器在光轴上的遥控距离可以大于 8 5 米 与光轴成 30 度 水平方向 或 15 度 垂直方向 上大于 6 5 米 在一些具体的应用中会充分考虑应 用目标 在距离角度之间需要找到某种平衡 对于遥控器涉及到如下几个主要问题 1 遥控器发出的编码信号驱动红外线发射管 必须发出波长范围在 940nm 左右的红 外光线 因为红外线接收器的接收二极管主要对这部分红外光信号敏感 如果波长范围 不在此列 显然无法达到控制之目的 不过 几乎所有的红外家电遥控器都遵循这一标 准 正因为有这一物理基础 多合一遥控器才有可能做成 2 遥控器发出一串编码信号只需要持续数十毫秒的时间 大多数是十多毫秒 或一百 多毫秒重复一次 一串编码也就包括十位左右到数十位二进制编码 换言之 每一位二 进制编码的持续时间或者说位长不过 2ms 左右 频率只有 500Hz 这个量级 要发射更远 的距离必需通过载波 将这些信号调制到数十千赫兹 用得最多的是 38KHz 大多数普 通遥控器的载波频率是所用的陶瓷振荡器的振荡频率的 1 12 最常用的陶瓷振荡器是 455KHz 规格 故最常用的载波也就是 455KHz 12 37 9KHz 简称 38k 载波 此外还有 480KHz 40k 440KHz 37k 432KHz 36k 等规格 也有 200k 左右的载波 用 于高速编码 红外线接收器是一体化的组件 为了更有针对性地接收所需要的编码 就 设计成以载波为中心频率的带通滤波器 只容许指定载波的信号通过 显然这是多合一 遥控器应该满足的第二个物理条件 不过 家用电器多用 38KHz 很多红外线接收器也 能很好地接收频率相近的 40KHz 或 36KHz 的遥控编码 3 一个设备受控 除了满足上面提到的两个基本物理条件外 最重要的是变化多种 多样的当然应该是遥控器发出一串二进制编码信号了 这也是不同的遥控器不能相互通 用的最主要原因 由于市场上出现成百上千的编码方式并存 并没有一个统一的国际标 青岛农业大学机电工程学院本科毕业设计 论文 14 准 只有各芯片厂商各自的标准 这也是模拟并替换各种原厂遥控器最大的难点 随着 技术的不断发展 很多公司开发家电设备的遥控子系统时还不采用通用的编码芯片 而 是用通用的单片机随心所欲地自编一些编码 这就使通用遥控的问题更加复杂化了 4 采用同样的编码芯片 也不意味着可以通用 因为还有客户码 客户码设计的最 初本意就是为了不同的设备可以相互区分互不干扰 最初芯片厂商会从全局考虑给不同 的家电厂商安排不同的客户码以规范市场 例如录像机和电视机就用不同的设备码 给 甲厂分配的设备码和乙厂分配的设备码就区分在不同的范围内 5 采用同样的编码芯片 同样的用户码下 也不能意味着一定可以通用 因为对命 令码的分配与使用上 仍然是没有固定的模式可以遵循 遥控器编码芯片简单的支持数 十种命令码 多的上千种 但遥控器往往只有数十个键 甚至只有几个键 如何从中选 取这数十个键 这些键如何分配使用 不同的系统设计师都自搞一套 这样一来事情就 更复杂化了 设计需考虑的问题是如何 同化 不同遥控器发射信号之间的差异 遥控编码 方式涉及很多方面 首先是数字 0 和 1 的表示 其次是帧结构 引导码和结束码 客户 码和命令码长度及发送方式 再次是帧间结构 仅发一次还是反复多次 多帧交替发 送 帧间间隔变化 最后是载波频率 以 38KHz 居多 也有 40KHz 甚至 200KHz 等 特殊载波 设计相应电路和软件时对上述诸多因素加以分析 归纳 将编码特点用一串二进制 位表示出来形成设备码 对应于一个具体的遥控器 同一个设备码下也就是同一个遥控 器不同的按键则用命令码来表示 代码型遥控器用软件的方式对这些统一的编码进行解 释 驱动一个个命令码按指定设备码格式加以 封装 形成所需要的遥控信号 达到 控制家电的目的红外遥控器具有性能稳定 结构简单 技术成熟 容易实现等优点 在 工业控制 智能仪器仪表 家用电器等方面应用广泛 10 通常红外遥控使用专门配对编 码 解码芯片 即某种解码芯片只能识别某种编码芯片的编码 对其他型号的编码芯片 的编码则不能识别 因此不同的遥控器没有互换性 造成使用场合有多个遥控器 用户 深感不便 于是提出了利用单片机作为主控芯片 结合红外遥控用户码的设置 自行设 计编码和解码程序 实现一个遥控器控制多台设备的方法 3 2 1 红外遥控器组成 通用红外遥控器由发射和接收两大部分组成 发射部分 按键开关 控制芯片 红外发射二极管发射信号等 青岛农业大学机电工程学院本科毕业设计 论文 15 接收部分 红外接收二极管接收信号 光 电转换放大电路 控制芯片 输出控制 3 2 2 红外遥控器的框图 遥控器 操作键盘 STC89C54 遥控器发射 电路 红外接收 电路1 STC89c54 单片机处理部 分 控制输出执 行 EEPROM 存储部 分 红外接收电路 2 STC89c54 单片机处理部 分 控制使出执 行 EEPORM 存储部分 图 3 7 设计总框图 3 3 硬件电路设计 红外遥控系统的硬件设计包括遥控器和接收控制器两部分 由于一个遥控器控制多 台设备 所以接收控制器的个数随控制对象的多少而定 形成如图 3 7 所示的一对多的电 路结构图 其中按键矩阵包含了所有被控设备的遥控按键 相同设备的遥控按键构成一 注 每组设置一个唯一的特征码 当这一组中任一按键被按下都会首发发射相同的用户 特征码 当发射的用户码与自身特征码相同时 该接收器执行相应的控制程序 控制自 身的装置产生相应的动作 而其他控制器不产生控制作用 3 3 1 发射端硬件电路 发射端采用具有 STC89C54 芯片作为控制中心 与键盘扫描电路和发射电路共同构 成 考虑到按键较多 可采用矩阵式 这里采用 4 4 当然 如果按键较多也可以采用 8 8 发射端利用单片机将待发送的二进制 青岛农业大学机电工程学院本科毕业设计 论文 16 信号编码调制为一系列的脉冲串信号 通过 P1 0 口发送 经三极管 8050 功率放大驱动红 外发射管 D1 其中键盘扫描和发射电路连接如图 3 8 所示 其中 R1 取 1k R2 取 200 S8 SW PB S4 SW PB S0 SW PB S12 SW PB S13 SW PB S1 SW PB S6 SW PB S11 SW PB S9 SW PB S14 SW PB S15 SW PB S7 SW PB S5 SW PB S10 SW PB S2 SW PB S3 SW PB 12MHZ 发发发发发 200 1K 200 C 22pF C 22pF SW PB 22uF VCC 8050 NPN VCC a bf c g d e DPY 1 2 3 4 5 6 7 a b c d e f g 8 dp dp 200 840 VCC 39 P0 0 38 P0 1 37 P0 2 36 P0 3 35 P0 4 34 P0 5 33 P0 6 32 P0 7 31 EA 30 ALE 29 PSEN 28 P2 7 27 P2 6 26 P2 5 25 P2 4 24 P2 3 23 P2 2 21 P2 0 22 P2 1 1 P1 0 2 P1 1 3 P1 2 4 P1 3 5 P1 4 6 P1 5 7 P1 6 8 P1 7 9 RST 10 P3 0 11 P3 1 12 P3 2 13 P3 3 14 P3 4 15 P3 5 16 P3 6 17 P3 7 18 X1 19 X2 20 GND STC89C54 2k 图 3 8 发射端电路 3 3 2 接收端硬件电路 接收控制器的个数随控制对象的多少而定 每个接收控制器都有一个 STC89SC4 芯 片作为控制中心 与接收电路和各自的控制电路共同构成 其中接收电路使用一体化红 外接收头 HS0038 HS0038 工作频率为 38KHZ 能对收到遥控信号进行放大 检波 整 形 调制 得到 TTL 电平信号 在送给单片机 经单片机解码并执行相关控制程序 对 外只有 3 个管脚 VSS GND 和 1 个脉冲信号输出引脚 使用方便 性能可靠 11 控制 电路随着被控设备的不同而不同 但原理是一致的 图 3 9 是其中的一个接收控制电路原 理图 青岛农业大学机电工程学院本科毕业设计 论文 17 VCC 8 WP 7 SCL 6 SDA 5 A0 A0 A1 A1 A2 A2 GND AT24c02 40 VCC 39 P0 0 38 P0 1 37 P0 2 36 P0 3 35 P0 4 34 P0 5 33 P0 6 32 P0 7 31 EA 30 ALE 29 PSEN 28 P2 7 27 P2 6 26 P2 5 25 P2 4 24 P2 3 23 P2 2 21 P2 0 22 P2 1 1 P1 0 2 P1 1 3 P1 2 4 P1 3 5 P1 4 6 P1 5 7 P1 6 8 P1 7 9 RST 10 P3 0 11 P3 1 12 P3 2 13 P3 3 14 P3 4 15 P3 5 16 P3 6 17 P3 7 18 X1 19 X2 20 GND STC89C54 发发 1 发发 VCC 发发 GND HS0038 200 1k 200 8 a bf c g d e DPY 1 2 3 4 5 6 7 a b c d e f g 8 dp dp 22uF VCC VCC VCC 12MHZ C 22pF C 22pF 4 7k 4 7k 图 3 9 接收端电路 青岛农业大学机电工程学院本科毕业设计 论文 18 四 智能红外遥控器的软件设计 软件设计就是本系统的大脑 控制芯片就是按照软件命令执行的 本设计的难点也 是在软件设计上 下面就把一些主要子程序介绍如下 其中包括键盘扫描 发射子程序 接收子程序 存储子程序 本设计中使用的是 11 0592MHz 晶振 4 1 编解码约定与存储 智能红外遥控器的软件核心就是编解码了 只有编解码合理正确 才能进行通信 才能谈得上控制 4 1 1 发射编码部分 红外遥控信号是一连串的二进制脉冲码 为了使其在无线传输过程中免受其他红外 信号的干扰 通常都是先将其调制在特定的载波频率上 然后再经红外发射二极管发射出 去 称为调制 本设计红外遥控信号采用自定义编码方式 由发送单片机来完成调制过程 因 HS0038 的红外接收频率为 38KHz 所以载波信号采用 38KHz 矩形波 周期 t 26us 载波信号由单片机产生 1 用低电平的宽度为 26ms 相当于 10 个 38KHz 脉冲宽度和 高电平 26ms 相当于 10 个 38KHz 脉冲宽度表示 0 用低电平的宽度为 0 52ms 相当于 20 个 38KHz 脉冲宽度和高电平为 26ms 相当于 10 个 38KHz 脉冲宽度表示 这样发射时 只需将发射的 1 或 0 与 38KHz 载波信调制即可 12 如图 4 1 所示 0 26ms0 26ms 1 的表示 0 52ms0 26ms 0 的表示 图 4 1 0 1 的表示 二进制信号的调制如图 4 2 青岛农业大学机电工程学院本科毕业设计 论文 19 O10 A 10个脉 冲 20个脉冲 单个脉冲 26us B C A B 编码后的二进制信号 调制后的二进制信号 发 送 图 4 2 二进制信号的调制 帧结构的定义 引导码 用户码 控制码 截止码 在发送字节的开始先通过单片机发送 8 位数据 字节高位在前 地位在后 高四 位表示用户码 低四位表示控制码 最后发送 10 个脉冲的低电平作为传输结束 图 4 2 为红外遥控数据帧格式 用户码是对每个接收系统的标识 通过对用户码的检验 每个 遥控器按键只能被其中一个接收器识别 从而可能告知相应设备 有效地防止了多个设 备之间的串扰 由于有 4 位用户码 所以系统理论上可以控制 16 个设备 红外遥控器发射程序由主程序 键盘扫描子程序及发射子程序 3 部分 发射主程序 流程图如图 4 3 发射子程序流程图如图 4 4 所示 开始 初始化 键盘扫描 判断是否 有键按下 判断是否为选 择键 Y 调相应选择键的发 射子程序 Y N N 发完 N 结束 Y 图 4 3 发射主程序流程图 判断是 0 还是 1 调发射 1 的子程序掉发射 0 的子程序 开始 发射位数减1 1 0 发射完 N 返回主程序 Y 图 4 4 发射子程序流程图 4 1 2 接收解码部分 红外线接收装置则要滤除其他杂波 只 青岛农业大学机电工程学院本科毕业设计 论文 20 接收该特定频率的信号并将其还原成二进制脉冲码 也就是解调 一体化接收头 HS0038 的解调可理解为 接收到红外脉冲时 输出低电平 否则输出高电平 显然输出的信号 极性与发送信号的相反 所以解码时要将接受到的信号经过反向才能和发送信号编码一 致 当接收端接收到表示传输开始的同步帧后 接手单片机进入解码过程 解码采用软 件抽样判决 13 从上升沿开始 以 15 个脉冲为判决门限 在门限时刻读的低电平是 即 可判定为编码 1 在门限时刻读的高电平时 即可判定为编码 0 解码 1 位后 需 等到下一位的上升沿到来 在计数 15 个脉冲后 判断读得的电平时高还是低 进行解码 不过需要明白接收头输出信号与出入的关系正好相反 如图 4 5 所示 表示 1 表示 0 表示 1 红外接收头接收的程序 输入 红外接收头接收头解调后输出的波形 图 4 5 红外接收头的输出 接收完 1 帧后 接收单片机首先判断接收到的用户码是否和自己的用户码一致 如 果不一致 则放弃刚接受到的数据并做好下一次接收准备 如果一致 则读取刚接受到 的控制码 并调用相应的控制程序 产生控制信号 红外遥控器接收部分由主程序 信号解码子程序和控制执行子程序 3 部分组成 主 程序负责初始化 不停地查询有无红外信号 控制程序则随着各设备不同而不同 主程 序和接收子程序流程图如图 4 6 和图 4 7 青岛农业大学机电工程学院本科毕业设计 论文 21 开始 初始化 收到信号 掉解码子程序 调控制子程序 用户码相同 N Y Y 图 4 6 接收端流程图 开始 有引导码 收到信号 8位接收完成 返回主程序 Y Y N N 图 4 7 接收子程序流程图 青岛农业大学机电工程学院本科毕业设计 论文 22 文中探讨了以单片机位控制核心 采用软件编程对红外遥控信号进行编码 解码设 计从而实现遥控功能 从而实现握手功能 从而完成了一只遥控器可控制多台设备 系 统硬件电路简单 工作稳定可靠 易于扩展受控设备 节约了资源 系统具有较强的灵 活性和使用性 为新型遥控器材的研制做了有益的探索 4 1 3 存储部分 在数据传送过程中 必须确认数据传送的开始和结束 在 I2C 总线技术规范中 开始 和结束信号 也称启动和停止信号 的定义如图 4 8 所示 当时钟线 SCL 为高电平时 数据线 SDA 由高电平跳变为低电平定义为 开始 信号 当 SCL 线为高电平时 SDA 线发生低电平到高电平的跳变为 结束 信号 开始和结束信号都是由主器件产生 在 开始信号以后 总线即被认为处于忙状态 在结束信号以后的一段时间内 总线被认为 是空闲的 青岛农业大学机电工程学院本科毕业设计 论文 23 图 4 8 开始与结束时序图 I2C 总线的数据传送格式是 在 I2C 总线开始

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论