




已阅读5页,还剩30页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
XXXXXX 毕业设计 论文 版权使用授权书毕业设计 论文 版权使用授权书 本人完全了解 XXXXXX 关于收集 保存 使用学位毕业设计 论文 的规定 同意如下各项内容 按照学校要求提交毕业设计 论文 的印刷 本和电子版本 学校有权保存毕业设计 论文 的印刷本和电子版 并采 用影印 缩印 扫描 数字化或其它手段保存毕业设计 论文 学校有 权提供目录检索以及提供本毕业设计 论文 全文或者部分的阅览服务 学校有权按有关规定向国家有关部门或者机构送交毕业设计 论文 的复 印件和电子版 在不以赢利为目的的前提下 学校可以适当复制毕业设计 论文 的部分或全部内容用于学术活动 毕业设计 论文 作者签名 年 月 日 XXXXXX 毕业设计毕业设计 论文论文 原创性声明原创性声明 本人郑重声明 所呈交的毕业设计 论文 是本人在指导教师指导下 进行研究工作所取得的成果 除文中已经注明引用的内容外 本毕业设计 论 文 的研究成果不包含任何他人创作的 已公开发表或者没有公开发表的作品 的内容 对本毕业设计 论文 所涉及的研究工作做出贡献的其他个人和集体 均已在文中以明确方式标明 本学位毕业设计 论文 原创性声明的法律责任 由本人承担 毕业设计 论文 作者签名 年 月 日 目目 录录 摘摘 要要 1 ABSTRACT 2 第第 1 章章 绪论绪论 3 1 1 引言 3 1 2 红外遥控的发展概况 3 第第 2 章章 理论分析理论分析 4 2 1 红外通信原理 4 2 2 方案论证与比较 6 第第 3 章章 硬件电路设计硬件电路设计 8 3 1 系统整体框架 8 3 2 主要元器件介绍 8 3 3 红外发射系统设计 12 3 4 红外接收系统设计 14 第第 4 章章 软件程序设计软件程序设计 18 4 1 红外发射软件设计 18 4 2 红外接收软件设计 20 第第 5 章章 使用软件介绍使用软件介绍 23 5 1 Proteus 23 5 2 Keil 25 5 3 Altium Designer 27 第第 6 章章 结束语结束语 28 参考文献参考文献 29 致致 谢谢 30 附录一附录一 电路原理图电路原理图 31 附录二附录二 PCB 板接线图板接线图 32 XXXXXX 本科毕业设计 1 摘摘 要要 该设计实现了一种基于 51 单片机实现的红外多路遥控发射 接收系统 可控制八路受 控设备的开关及 LED 数码管显示 该系统以两个 STC89C51 单片机作为控制单元 发射单 元的单片机负责进行红外信号的编码及 38KHz 载波信号的生成 并使用 74HC08 逻辑与运 算器进行红外信号的调制 接收单元的单片机负责接收外部中断请求及红外编码信号的处 理 红外信号的传输工具采用了红外发光二极管和 VS1038 红外一体化接收头 红外接收 头能对红外信号进行放大 解调 整形并将得到的 TTL 电平编码信号传输给单片机 红外 通信协议采用了应用范围最广的 NEC 协议 该协议根据脉冲持续时间的长短进行信号的编 解码 红外信号的编码和解码以及载波信号的生成全部依靠 C51 语言编程实现 具有硬件 电路简单 使用方便 功能灵活等显著优点 完全实现了远距离的多路设备的控制 关键词关键词 红外通信 单片机 遥控 XXXXXX 本科毕业设计 2 ABSTRACT This design has realized a kind of based on Single Chip Microcomputer implementation of multichannel infrared remote control transmitting and receiving system to control the switch of eight channel controlled equipment and LED digital tube display The system with two STC89C51 microcontroller as the control unit MCU launch unit responsible for the infrared signal coding and 38 KHZ carrier signal is generated and the use of logic and arithmetic unit of infrared signal modulation MCU is responsible for receiving the external interrupt request receiving unit and the processing of the infrared coding signal Infrared signal transmission tool using the infrared leds and VS1038 integration of infrared receiving infrared receiver head to the infrared signal amplification demodulation plastic and will get the TTL level coding signal is transmitted to MCU Infrared communication protocol adopted the most widely application scope of the NEC protocol the protocol according to the length of the pulse duration signal encoding and decoding Infrared signal encoding and decoding and the carrier signal generated all rely on C51 programming language Has the hardware circuit is simple easy to use flexible function and other significant advantages fully realize the long distance multiplex equipment control Key words Infrared communication Single Chip Microcomputer technology Remote control XXXXXX 本科毕业设计 3 第第 1 章章 绪论绪论 1 1 引言引言 自电气革命以来 家用电器越来越多的出现在了人们的家庭中 为了使人们能 更加方便地控制这些电气设备 工程师们开始将红外遥控技术运用于家用电器中 这一远距离控制家用电器的技术给人们的生活带来了极大的便利 我们躺在床上 坐在沙发上便可通过手中小小的面板控制家里的电视 空调等一切 甚至手机厂商 们都不得不靠在智能手机上集成红外遥控功能来增加自己手机品牌的竞争力 除了 家用电器领域外 红外遥控技术还被广泛地应用在了航天科工 军事武器 工业级 大型设备中 由此可见 红外遥控技术在现代生活中已经占据了举足轻重的地位 1 2 红外遥控的发展概况红外遥控的发展概况 1 2 1 历史背景历史背景 上世纪八十年代初 日本率先在电视产品中使用了红外遥控技术 由此 红外 遥控技术开始被越来越多地使用到了家用电器设备中 红外通信技术也进入了飞速 发展的阶段 在红外遥控技术发展的最初时期 遥控信号码的发射还是使用集成芯 片来进行实现的 比如日本东芝的 TC9012 芯片 德国飞利浦的 SAA3010 芯片等 这种芯片的主要特点是遥控器内预置固定编码 一只遥控器只能控制特定型号的一 个设备 1 2 2 现状分析现状分析 随着红外通信以及电子技术飞跃式的发展 如今的红外遥控器都已制作的精致 而小巧 但大多数的红外遥控器还存在功能单一 仅能实现一对一设备控制的不足 人们在买回各式各样的家用电器的同时也买回了样式繁多的遥控器 红外遥控技术 带来方便的同时也带来了不小的困扰 近几年来 市场上也出现了学习型红外遥控 器 分为以固定码格式学习的遥控器和以波形拷贝的方式学习的遥控器 但这种遥 控器对硬件电路的要求都比较严格 大大增加了制作的成本 而且需要控制其他设 备的时候还需要重新进行学习的操作 XXXXXX 本科毕业设计 4 第第 2 章章 理论分析理论分析 2 1 红外通信红外通信原理原理 2 1 1 红外光红外光 在光谱中 红外光是波长介于 700 纳米至 1 毫米的一段特殊颜色的普通光 如 图 1 所示 任何温度高于绝对零度 约为 273 15 摄氏度 的物质都可以发出红外光 由于红外光是不可见光 因此我们无法用肉眼看见它 但这并不代表我们无法使之 呈现 例如 我们可以通过手机摄像头照射电视遥控器的发射器使红外光 出现 红外光的不可见属性是我们利用它的重要原因之一 图 1 太阳光谱 2 1 2 红外通信红外通信 红外通信是一种利用红外线进行信息传输的通信方式 可进行语言 文字 数 据 图像等信息的传递 红外遥控技术在遥控通信领域中应用最为普及 它体积小 巧 节能环保 成本低廉 功能强劲 抗干扰能力优秀 这些显著的优势 使其在 家用电器设备中使用广泛 而在工业环境中 红外遥控装置能很好地应用于各种极 端条件下 它不仅安全可靠 还能有效地隔离电气干扰 1 2 1 3 红外通信协议红外通信协议 通信协议是指双方实体完成通信或服务所必须遵循的规则和约定 红外通信的 实现同样需要遵循相关协议 如今的红外通信协议有很多的版本 如不使用调制信 号的 ITT 协议 采用双向编码的菲利普 RC5 RC6 协议 及应用广泛的 NEC 协议 这些协议各有各的特点 本文采用了 NEC 红外通信协议 NEC 红外通信协议特征如下 8 位系统码 8 位操作码 完整发射两次系统码和操作码 XXXXXX 本科毕业设计 5 脉冲时间长短编码方式 使用频率为 38KHz 的载波信号 位时间 1 12ms 或 2 25ms NEC 协议定义的红外通信的每一帧信号都由一组引导码 一组 8 位系统码 一 组 8 位系统码反码 一组 8 位操作码再加上一组 8 位操作反码组成 共 32 位 如图 2 所示 9ms4 5ms系系统统码码系系统统码码反反码码操操作作码码操操作作码码反反码码 图 2 NEC 协议编码信号组成 引导码相当于一把钥匙 单片机只有检测到了引导码 才会确认接收后面的信 号 这样就保证了数据传递的正确性 NEC 协议定义的引导码为 9 毫秒的高电平加 4 5 毫秒的低电平 我们自己设计红外发射电路时 可自己定义引导码时间 但为了 保证信号接收准确 引导码的高电平时间不应过短 系统码则可用来对各种遥控信 号进行区分 使它们不会互相干扰 操作码是用户实际需要的编码 发射端按下不 同的按键可产生不同的操作码 接收端接收后可根据其产生不同的操作 操作反码 是操作码的反码 其关键性作用就是提高接收到的数据的正确性 2 NEC 协议根据脉冲时间长短来进行编 解码操作 每个脉冲为 0 56ms 长的 38KHz 载波 约 21 个载波周期 逻辑 0 的脉冲时间为 1 12ms 逻辑 1 的脉冲时 间为 2 25ms 载波的占空比为 1 3 如图 3 所示 0 56ms0 56ms0 56ms 1 12ms2 25ms 逻辑 0 逻辑 1 图 3 NEC 协议的逻辑定义 在编码过程中最需要注意的是编码与数据的二进制数的对应关系为 低位在前 高位在后 比如图 4 中的波形所代表的二进制数为 10101010 而不是 01010101 2 1 4 红外载波信号红外载波信号 XXXXXX 本科毕业设计 6 为了更好地减少周边环境对红外信号产生的干扰 我们需要把基带信号调制到 高频的载波上 经过载波的二次调制还可以达到提高红外信号的发射频率增加发射 距离的作用 通常情况下 红外通信所使用的调制载波的频率介于 30KHz 到 60KHz NEC 协议所使用的是占空比为 1 3 频率为 38KHz 的载波 载波频率的大小跟我们在发 射端单片机上所使用的晶振有关 3 关于 38KHz 载波的产生将会在第四章中进行详 细的介绍 如图 4 所示 由上至下分别是发射的红外基带信号波形 38KHz 的载波 波形 调制后加到红外发光管驱动电路的波形的示意图 4 图 4 红外信号波形图示意图 2 2 方案论证与比较方案论证与比较 方案一 使用专用调制 解调芯片组成的红外发射 接收系统的核心 编码 解码电路 代码产生电路由按键与其它元器件组成 该设计通过编码集成电路 VD5026 对键盘电路产生的控制信号进行并 串转换 由 17 脚输出编码数据 再将编 码数据通过脉调制电路调制在较高的载波上通过红外光发射 红外接收管将光信号 转换为电信号 由解码器进行解调 再由译码集成电路 VD5027 对解调出来的串行 数据进行解码 使其成为控制代码去控制各电路 方案二 采用两个 STC8951 单片机作为控制单元 在发送端使用 STC8951 单片 机及键盘电路进行编码信号的生成并由内部定时器产生 38KHz 载波 使用 74HC08 逻辑与运算器进行信号的调制 再用三极管驱动红外发光二极管发射出调制后的红 外信号 在接收端使用一个 HS0038 一体化红外接收头进行红外信号的接收 并对 信号进行放大 检波 整形 得到 TTL 电平的编码信号 再经另一个 STC8951 单 XXXXXX 本科毕业设计 7 片机的解码执行 去控制相关对象 方案一中采用专用芯片组成编码解码电路 可实现对 16 211 路电路的控制 其 电路简单 抗干扰能力强 编码调制全部用硬件实现 各分支电路相互独立 设计 调试比较简单 但其容易发生故障 不易变换功能 有较强的限制性 方案二中利 用 STC89C51 单片机进行编 解码 同时使用单片机内部定时器产生 38KHz 载波 虽然具有编程量大 要求严格 尤其是高频载波信号稍有差错便会使接收端无法正 常接收的缺点 但其控制方便 功能变换十分灵活 且不受电路限制 具有较明显 的发展前景 综上所述 该系统采用方案二进行系统的设计与实现 XXXXXX 本科毕业设计 8 第第 3 章章 硬件电路设计硬件电路设计 3 1 系统整体框架系统整体框架 该红外多路遥控发射 接收系统分为发射和接收两大部分 在发射部分 单片机将键盘电路产生的信号进行编码产生一系列的脉冲串 内 部定时器通过编程生成 38KHZ 载波信号 74HC08 逻辑与运算器对信号进行调制后 使用 NPN 三极管对信号进行放大处理并驱动发光二极管发射信号 在接收部分 我们使用红外一体化接收头完成红外通信信号的接收工作 红外 接收头内部会直接对接收到的信号进行放大 解调和整形以得到 TTL 电平编码信号 再由信号输出脚将该电平信号通过 I O 口传输到单片机内部进行处理 最后单片机 会对编码信号进行解码并执行操作去控制相关的受控对象 系统整体框架图如图 5 所示 键键盘盘电电路路单单片片机机红红外外发发射射电电路路 红红外外一一体体化化接接收收 头头 单单片片机机受受控控设设备备 图 5 系统整体框架图 3 2 主要元器件介绍主要元器件介绍 3 2 1 单片机单片机 STC89C51 STC89C51RC 是采用 8051 核的 ISP In System Programming 在系统可编程芯 片 最高工作时钟频率为 80MHz 片内含 8K Bytes 的可反复擦写 1000 次的 Flash 只读程序存储器 器件兼容标准 MCS 51 指令系统及 80C51 引脚结构 芯片内集成 了通用 8 位中央处理器和 ISP Flash 存储单元 具有在系统可编程 ISP 特性 配 合 PC 端的控制程序即可将用户的程序代码下载进单片机内部 省去了购买通用编 程器 而且速度更快 STC89C51RC 系列单片机是单时钟 机器周期 1T 的兼容 8051 内核单片机 是高速 低功耗的新一代 8051 单片机 全新的流水线 精简指令集结 XXXXXX 本科毕业设计 9 构 内部集成 MAX810 专用复位电路 5 P1 0 P1 1 P1 2 P1 3 P1 4 P1 5 P1 6 P1 7 RST P3 0 RXD P3 1 TXD P3 2 INT0 P3 3 INT1 P3 4 T0 P3 5 T1 P3 6 WR P3 7 RD XTAL2 XTAL1 GND P0 0 P0 1 P0 2 P0 3 P0 4 P0 5 P0 6 P0 7 VCC P2 7 P2 6 P2 5 P2 4 P2 3 P2 2 P2 1 P2 0 PSEN ALE PROG EA VPP STC89C51 图 6 STC89C51 单片机引脚图 主要特性 与 MSC 51 兼容 4K 字节可编程 FLASH 存储器 1000 次写入擦数循环 数据可保留 10 年 三级程序存储器锁定 0 24MHz 全静态工作 128x8 位 RAM 中断源 5 可编程 I O 线 32 16 位定时器 计数器 2 可编程串行通信 低功耗闲置掉电模式 片内时钟电路 管脚说明 VCC 供电电压 5V GND 接地 P0 口 双功能 8 位并行 I O 口 P1 0 P1 7 内部无上拉电阻 不存在高阻态 字节地址为 80H 位地址为 80H 87H P1 口 内部提供上拉电阻的单功能 8 位 I O 口 字节地址为 90H 位地址为 90H 97H P2 口 内部提供上拉电阻的双功能 8 位 I O 口 可作为地址输出线使用 也可 XXXXXX 本科毕业设计 10 作为通用 I O 口使用 字节地址为 A0H 位地址为 A0H A7H P3 口 内部提供上拉电阻的 8 位 I O 口 字节地址为 B0H 位地址为 B0H B7H P3 口还具有其他第二功能 P3 口管脚备选功能 P3 0 RXD 串行输入口 P3 1 TXD 串行输出口 P3 2 INT0 外部中断 0 P3 3 INT1 外部中断 1 P3 4 T0 计时器 0 外部输入 P3 5 T1 计时器 1 外部输入 P3 6 WR 外部数据存储器写选通 P3 7 RD 外部数据存储器读选 通 RST 复位输入口 PSEN 外部程序存储器的选通信号 ALE PROG 正常工作时输出 1 6 晶振频率的方波 EA Vpp 开始程序执行的标志 第二功能是编程用的 XTLA1 反向振荡放大器的输入端也是内部时钟电路的输入端 XTLA2 反向振荡放大器的输出端 3 2 2 逻辑与运算器逻辑与运算器 74HC08N 74HC08N 是一款高速的 CMOS 元器件 如图 7 所示 它带有 4 路独立的 2 输 入与门 可以用来进行逻辑与运算操作 其逻辑功能表达式为 Y A B 正逻辑 在本系统中我们主要是用 74HC08 进行 38KHZ 载波的加载 其主要参数如下 电压 2 0 6 0V 驱动电流 4mA 工作环境 0 70 摄氏度 存储温度 65 150 摄氏度 1 2 3 4 7 5 6 14 13 11 8 10 9 12 A1 B1 Y1 A2 B2 Y2 GND Y4 B4 A4 Y3 B3 A3 VCC 74HC08N A1 B1 Y1 图 7 74HC08N 内部原理图 XXXXXX 本科毕业设计 11 3 2 3 红外对管红外对管 想要进行红外信号的发射和接收 红外对管是必不可少的工具 红外对管由红 外发射管和红外接收管组成 红外发射管我们现在一般使用的就是红外发光二极管 它可以说是一种比较特殊的发光二极管 它并不发出可见光 而是通过发射红外光 来发射我们所需的红外通信信号 红外发光二极管通常使用砷化镓 GaAs 砷铝 化镓 GaAlAs 为原材料制作而成 其外形跟常见的发光二极管颇为相似 一般是 采用透明 浅蓝色或暗黑色的树脂封装方式 如图 8 所示 我们给红外发光二极管通电后 它可以发射出波长约 940 纳米的红外光 红外 发光二极管判断正负极的方法与发光二极管相同 一是根据引脚的长短来进行判断 长引脚为正 短引脚为负 二是根据管内金属片的大小来进行判断小的为正大的为 负 红外接收管的主要功能是接收遥控器发射来的红外信号 它分为封装成两个引 脚的红外接收二极管和封装成三个引脚的红外一体化接收头 红外接收二极管仅能 将接收到的红外光信号转化为电信号 而红外接收头不仅能进行这种光电信号的转 换 它内部还集成了放大 解调和整形的功能 1 如图 9 所示 是使用铁皮封装的 红外一体化接收头 VS1838B 图 8 红外发光二极管 图 9 红外一体化接收头 红外一体化接收头 VS1838B 使用了铁皮封装的封装方式 具有供电脚 接地脚 和信号输出脚三个引脚 可以接收到频率为 38KHz 周期约为 26 微秒的红外通信 信号 其基本属性如下 工作电压 2 7 5 5V 工作电流为 1 7 2 7mA 接收频率 38KHz 峰值波长 980nm 静态输出 高电平 没有接收到信号 输出低电平 0 4V 输出高电平 接近工作电压 XXXXXX 本科毕业设计 12 由于红外一体化接收头内部放大器的增益很大 容易产生干扰 因此 我们通 常需要在接收头的供电脚上加上一个 22uF 以上滤波电容 另外 我们还可以在接收 头的供电脚和电源之间接入一个 330 的电阻以进一步降低电源干扰 红外一体化 接收头一个十分重要的特性是它会将解调后的红外信号进行反向处理 如图 10 所示 9ms 4 5ms的引导波 图 10 反向处理波形图 3 3 红外发射系统设计红外发射系统设计 红外发射系统由键盘电路 单片机最小系统 红外信号发射电路三部分组成 红外发射系统整体电路图如图 11 所示 图 11 红外发射系统整体电路图 3 3 1 红外信号发射电路红外信号发射电路 XXXXXX 本科毕业设计 13 红外信号发射电路具有红外信号的调制 放大 发射的功能 红外发射信号的 调制一般采用硬件调制和软件调制两种方式 硬件调制是将编码信号和载波信号直 接通过一个与门进行调制输出不需要编写程序 软件调制就是通过预先编写好的软 件程序直接产生调制后的红外波形但编程量大编程要求十分严格 综合考虑 我们 采用硬件调制的方式对红外输出信号进行调制 使用一个 74HC08N 逻辑与运算器 其 A1 和 B1 口接单片机的输出口 P2 7 和 P2 6 P2 7 和 P2 6 口会将红外编码信号和 38KHz 载波传输到与门中 由与门进行调制后从 Y1 口输出 再通过三极管驱动红 外发光二极管将信号进行发射 如图 12 所示 1 2 3 4 7 5 6 14 13 11 8 10 9 12 A1 B1 Y1 A2 B2 Y2 GND Y4 B4 A4 Y3 B3 A3 VCC P2 7 P2 6 74HC08N VCC 8050 10K 图 12 红外信号发射电路图 3 3 2 单片机最小系统单片机最小系统 单片机最小系统包括外部晶体振荡电路和复位电路再加上一个 STC89C51 单片 机芯片 其中 晶振电路由一个 12MHz 晶振 两个 30pF 电容组成 如图 13 所示 外部晶振电路需接到单片机的 XTAL1 和 XTAL2 两个端口 这两个端口分别为单片 机内部的高增益反向放大器的输入端口和输出端口 6 晶振电路通过与单片机内部 的时钟电路相连可以产生特定的时钟信号使相关电路工作在一定频率下 复位电路 由一个 10K 的上拉电阻和一个 10uF 电容组成 RES 是单片机的复位输入口 当单 片机的 RST 引脚收到 2 微秒以上的电平信号 即保证电容的充放电时间大于 2 微秒 便可实现复位 复位电路可将电路恢复到起始状态 在我们的程序出现故障时 我 XXXXXX 本科毕业设计 14 们可以通过按下复位按钮使系统内部程序重新开始执行 7 复位电路如图 14 所示 图 13 晶振电路图 图 14 复位电路图 3 3 3 键盘电路键盘电路 由于该系统只需控制八个发光二极管的明或暗 不需要占用过多的单片机 I O 资源 因此键盘电路我们选择简易便捷的独立键盘 该键盘电路使用了 8 个独立的 按键 按键的一端分别接到单片机的 P1 0 P1 7 口 另外一端连在一起接地 如图 15 所示 在该键盘电路中 由于按键按下后会改变 I O 口的高低电平状态 因此单 片机就可通过读取 I O 口的高低电平状态来获取按键的直接状态编码值 并通过这 个编码值进行按键的识别 识别到按键后 系统会根据不同的按键发射出不同的红 外编码信号 键盘电路如图 15 所示 图 15 键盘电路图 3 4 红外接收系统设计红外接收系统设计 XXXXXX 本科毕业设计 15 红外接收系统由一个红外一体化接收头和一个单片机系统组成 8 个发光二极 管和 1 位数码管组成受控设备 红外接收系统的整体电路图如图 16 所示 图 16 红外接收系统整体电路图 3 4 1 红外接收头电路红外接收头电路 VS1838B 红外一体化接收头使用铁皮封装 面向接收头从左到右第一个引脚是 红外信号输出引脚 直接接单片机的 P3 2 口 第二个引脚接地 第三个引脚接 VCC5V 供电电源 在接收头的输出口 为了保证信号的传输能力 可接上一个有上 拉电阻的电源 红外接收头可将处理后的红外编码信号通过 P3 2 口传递给单片机进 行处理 这里需注意的是接收到的信号实际上是发射编码的反码 8 10 如图 17 所示 XXXXXX 本科毕业设计 16 图 17 红外接收头电路图 3 4 2 数码管显示电路数码管显示电路 数码显示电路我们采用的是 LED 数码管 LED 数码管又分为共阴极和共阳极 两种 如图 18 所示 abcdefgh 共阴极7段数码管 GND 5V hgfedcba 共阳极7段数码管 a b c d e f g 图 18 LED 数码管原理图 上图很明显地阐释了这两种结构的数码管不同之处 共阴极的数码管中的发光 二极的负极全部连在一起接地 正极端进行了分开的处理 而共阳极的数码管 其 内部的发光二极的正极全部连在一起接 VCC 负极端进行了分开的处理 对于共阴 极数码管老说 当其内部某一发光二极的正极接收到高电平则该段二极管便会发光 对于共阳极数码管则反之 该系统中我们使用的是一位 8 段的 LED 数码管 因此 我们只需要进行段选处 理 将数码管的管脚 a g 分别接到单片机的 P2 0 P2 6 口即可 这样 通过管脚的 输出的高低电平状态直接去控制数码管每个二极管的明或暗 以达到数字显示的功 能 值得一提的是 如果是多位的数码管 我们还需要进行位选操作 这里由于是 一位的 所以省去了位选操作 LED 数码管接线图如图 19 所示 11 XXXXXX 本科毕业设计 17 a b c f e d g h ab chd e e gf P2 0 P2 1 P2 2P2 3P2 4 P2 5P2 6VCC 图 19 LED 数码管接线图 3 4 3 发光二极管电路发光二极管电路 该系统中我们使用了 8 个发光二极管代替了受控设备 发光二极管电路十分简 单 只需给发光二极管阳极端接上 5V 电源 各自串联一个 1K 的限流电阻 阴极端 接到单片机 P1 口 如图 20 所示 图 20 发光二极管接线图 如果需要用该系统去控制家用电器的时候 我们可将二极管换成继电器 并辅 以外围电路即可 XXXXXX 本科毕业设计 18 第第 4 章章 软件程序设计软件程序设计 本红外遥控接收 发射系统的软件程序根据硬件电路分为发射和接收两部分 发射部分需考虑独立键盘的键位识别 编码信号和调制信号产生的软件程序设计 在接收电路需考虑红外解调后的信号接收 发光二极管的点亮以及晶体管的显示的 软件程序设计 4 1 红外发射软件设计红外发射软件设计 红外发射部分的工作原理为 发射系统上电执行系统初始化 程序进入到主循 环状态 首先会调用键盘扫描子程序 在无按键按下的时候系统保持等待状态 一 旦有按键按下 程序会通过按键检查子程序去识别按键键位随后再转入到相应的编 码发射子程序中 在编码发射子程序中 系统会先启动定时器 0 通过定时 计数器 的计算来依次发射引导码 系统码 系统反码 操作码 操作反码的固定时长的脉 冲信号 红外发射系统软件设计的流程图如图 21 所示 12 开始 按键扫描 有键按下 N 识别键位 Y 延时子函数 系统初始化 编码发射子 函数 发送引导码 客户 码 客户反码 根据键位进 行编码 发送操作码 和操作反码 关闭TR0 停止 信号发送 开始 打开TR0 释放按键 图 21 红外发射系统软件设计流程图 XXXXXX 本科毕业设计 19 系统初始化子函数设置了定时器 计数器 0 的工作方式为方式 2 即 8 位可自动 重装计数器 当计数溢出时 TH 中的初值可重新装入到 TL 中 开始第二次计数 并对计数器 0 赋初值 244 系统初始化子函数如图 22 所示 图 22 系统初始化子函数 38KHz 载波通过系统初始化子函数及定时器中断函数进行生成 38KHz 表示每 秒 38000 次 则每次耗时 26 微秒 由于单片机使用了 12MHz 的晶振 由 1 12 12 1 可得单片机的机器周期约为 1 微秒 而 38KHz 的载波需要单片机 P2 6 口每 13 微秒改变一次状态 则可对定时器 0 进行中断控制 每 13 微秒定时器 0 进行一 次中断 即每 13 微秒计数器 0 溢出一次 我们使定时器 0 工作在方式 2 则 256 13 243 由于执行中断服务也需要时间 所以我们对定时器 0 赋初值 244 这样就 能在单片机的 P2 6 口输出 38KHz 的载波 13 14 定时中断函数如图 23 所示 图 23 定时器中断函数 信号编码发射功能都是由信号发射子函数进行完成 发射子函数利用定时器 0 每中断一次的时长进行累计计数 再通过 do while 循环函数产生固定时长的高低 XXXXXX 本科毕业设计 20 电平从而发射出所需要的编码信号 当一帧信号发送完成后 程序关闭定时器 停 止信号的发出 引导码编码发射程序如图 24 所示 图 24 引导码编码发射程序 4 2 红外接收软件设计红外接收软件设计 红外接收部分的工作原理为 接收系统上电初始化 单片机内部的 CPU 对 INT0 口进行检测 当其为高电平时 系统处于待机状态 当其变为低电平时 系统 启动中断服务开始接收红外信号 接收控制流程图如图 25 所示 中断服务程序首先 对引导码进行判断 当引导码的持续时间正确时 程序会继续往下读取码 同时对 编码进行处理将其转换为相应的二进制数 据 当信号编码达到了 32 位即完成了一帧数据的接收时 中断服务函数会将标志位 IrOK 置 1 这时主函数会对操作码进行取码 通过显示子函数读取码值并控制相关 对象 15 中断服务程序流程图如图 26 所示 XXXXXX 本科毕业设计 21 开始 系统初始化 检测INT0口状态 是否为0 N Y 执行中断服务函数 开始 接收数据 是否为引导 码 0 还是 1 N Y 存储并处理红外编码 01 停止信号的接收 图 25 接收控制程序流程图 图 26 中断服务程序流程图 中断解码函数是接收部分最为关键的函数 如图 27 所示 它使用了外部中断 0 的第一组寄存器 在主函数中已经设置了定时器 0 的工作方式为方式 1 所以我们 可以用 Tc TH0 256 TL0 来提取中断时间间隔时长 以便用来进行红外编码信号的 识别 XXXXXX 本科毕业设计 22 图 27 中断服务程序流程图 XXXXXX 本科毕业设计 23 第第 5 章章 使用软件介绍使用软件介绍 5 1 Proteus 5 1 1Proteus 介绍介绍 Proteus 是目前市面上应用的十分广泛的 EDA 工具软件 可进行电路的分析和 实物的仿真 它不仅拥有庞大的元器件库 还可根据需要创建元器件 功能十分强 大 在该红外多路遥控系统中 使用 Proteus7 8 Sp2 进行了实物的部分仿真 5 1 2Proteus7 8 基本操作基本操作 Proteus7 8 安装完成后 电脑桌面上会生成 ISIS 7 Professional 快捷方式 双击 该图标可打开 Proteus7 8 Sp2 也可在开始菜单中打开 进入到 Proteus 主界面 Proteus ISIS 的工作界面是一种标准的 Windows 界面 包括了标题栏 主菜单 工具 栏在内的一系列元素 给我们的使用带来了巨大的方便 Proteus ISIS 的工作界面如 图 28 所示 图 28 Proteus ISIS 的工作界面 XXXXXX 本科毕业设计 24 Protues 的操作过程十分简单 首先我们可通过对象选择按钮挑选我们所需要的 元器件 挑选时只需在 Pick Devices 界面输入我们所需元件的关键字后 列表中便 会显示相关联的一系列器件 如图 29 所示 我们选中后双击器件便能将该器件添加 至对象选择器窗口 图 29 对象选择器窗口 元器件添加好了之后 我们可在对象选择器窗口中左键单击选择一个 然后将 指针拖到图形编辑窗口的某一位置双击鼠标左键便能将器件放置进来 如果想要移 动元器件位置 只需先左键单击该器件使其变红色 鼠标指针放在其上面 然后再 按住鼠标左键不放 将其拖动到指定地方后松开鼠标左键就可完成器件的移动 放置好元器件的位置后 我们还需要用导线将器件进行连接 Proteus 具有导线 连接的自动检测功能 在我们需要连接某两个元器件的时候 只要先点击某个端点 后拖动鼠标指针靠近另一个端点 Proteus 便可以自动识别相应的连接点 十分方便 Proteus 还提供了导线标注的功能 在我们电路十分复杂时 我们可以鼠标右击 导线对导线进行标注 将应该接在一起的导线标注上一样的名称 这样就省去了导 线绕来绕去的麻烦 还可以使电路图更加的清晰明了 导线标签窗口如图 30 所示 XXXXXX 本科毕业设计 25 图 30 导线标签窗口 电路图画好以后 我们将 Keil 软件生成的 HEX 执行文件导入单片机 便可以 使用 Proteus 进行的系统部分仿真如图 31 所示 图 31 系统部分仿真图 5 2 Keil 5 2 1Keil 介绍介绍 Keil C51 软件是由美国 Keil Software 公司生产研制的 51 系列兼容单片机 C 语 言开发系统 我们使用的 Keil Vision4 发布于 2009 年 2 月 它引入了更加灵活的 XXXXXX 本科毕业设计 26 窗口管理系统 使开发应用程序变得更加整洁 高效 Keil 软件生成的目标代码效 率非常之高 多数语句生成的汇编代码很紧凑 容易理解 本系统中 C51 语言的 编写编译都是使用 Keil uVision4 软件完成的 5 2 1 Keil Vision4 基本操作基本操作 Keil 软件安装完成后 在电脑桌面上双击 Keil uVision4 的图标就可打开 Keil 软 件 也可在开始菜单中打开 进入到 Keil uVision4 的集成环境中 Keil uVision4 的 工作界面同样也是一种标准的 Windows 界面 很便于我们识别和理解 第一步 我们需要先建立一个新的工程 单击工具栏中的 工程 菜单 在弹出的下拉框中选中 新建 uVision 工程 单击 该选项之后需要先对保存路径进行选择 之后再输入工程文件的名称 最后点击 保 存 随后会弹出单片机选择对话框 如图 32 所示 在该对话框中可以根据需要选 择对应的单片机芯片 Keil C51 几乎支持所有基于 51 内核的单片机芯片 这里我 们选用了 Atmel 公司生产的 STC89C51 单片机 在对话框的右边栏里有对这个单片 机进行的基本介绍 我们点击 确定 便完成单片机芯片的选择 如果我们需要重新 选择单片机 则只需在 工程 菜单的下拉框中选择 为 XX 选择设备 选项就可重新 进行选择 到此 一个新的工程就创建完了 图 32 选择单片机型号对话框 第二步 添加文件到工程中 在上一步中我们仅仅是建立好了一个工程用来管理对应的一个项目 还并没有 写入一行程序 这样是无法对硬件进行操作的 因此需要建立相应的 C 文件或汇编 XXXXXX 本科毕业设计 27 文件 我们在工程保存路径下新建一个 C 文件 新建之后保存 在 Keil 中将文件添 加到组中 打开 c 文件 输入 C 语言程序代码 完成后点击 保存 然后单击 目标 选项 图标 在选项栏中选择 输出 并勾选 产生 HEX 文件 如图 33 所示 这样可 使程序编译后产生 HEX 为后缀的执行文件 以便在 Proteus 里加载可执行代码 我们再单击 项目 栏 更改晶振频率 本系统使用的是 12 MHz 晶振 到此 设 置工作已完成 下面我们可将程序编译并转换成可执行文件 HEX 的文件 图 33 目标选项设置对话框 第三步 编译并生成可执行文件 依次单击工具栏中的 翻译 编译 重新编译 图标 如果程序没有语法错 误 程序便能编译成功并生成 HEX 文件 5 3 Altium Designer Altium Designer 10 是一款板卡级的电路设计软件 具有友好的图形界面及优秀 的智能化设计 可进行原理图绘制 印刷电路板设计 电路仿真等操作 功能强大 使用方便 在该红外多路遥控系统的设计过程中 使用了 Altium Designer 10 完成了 印刷电路板的绘制 使用 Altium Designer 10 绘制的电路原理图及电路 PCB 板见附录二 附录三 XXXXXX 本科毕业设计 28 第第 6 章章 结束语结束语 历时十三周 该红外
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 解析卷北师大版9年级数学上册期中测试卷及答案详解(名师系列)
- 2025年度文艺演出场地租赁合同范本
- 2025年创业合伙人合作协议范本涵盖知识产权归属
- 2025年度电力设备预防性保养维修与节能降耗合同
- 2025年度农产品加工工业品标准买卖合同
- 2025版铁路货运与公路联运综合服务合同
- 2025年度智慧城市建设项目材料采购合同范文
- 2025年度塔吊安装与拆除工程安全责任合同
- 2025年婚内房产共有权设立与子女抚养责任协议
- 2025二手装载机转让合同样本
- 中级经济师模拟试题及答案
- 家庭食品卫生知识培训课件
- 无人机应用技术培训教材
- 地铁安保培训课件
- 2025年广西南宁职业技术大学招聘教职人员考试笔试试题(含答案)
- 2025年食品安全监督员专业技能考核试题及答案解析
- 七年级初一新生家长会上校长走心讲话:陪孩子一起长大是一场不能重来的旅程
- 企业微信办公使用教程
- 红十字应急救护创伤止血
- 2025-2026学年高二上学期开学入学教育主题班会【课件】
- 学堂在线 大学历史与文化 章节测试答案
评论
0/150
提交评论