基于单片机的红外遥控设计与制作_第1页
基于单片机的红外遥控设计与制作_第2页
基于单片机的红外遥控设计与制作_第3页
基于单片机的红外遥控设计与制作_第4页
基于单片机的红外遥控设计与制作_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

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

文档简介

基于单片机的红外遥控设计与制作基于单片机的红外遥控设计与制作 13 工试 2 班 陈舒佳 章韬略 1 设计目的设计目的 对于本课题的研究 其理论中的价值是对红外线这种 电磁波的特性进行更加深入的研究 同时在与单片机和电 子电路的共同作用下 找到单片机及电子电路在实际运用 中的更多功能 从而挖掘出红外线和硬件设备结合中的更 多可能性 在现实意义中 对于红外线的使用 它不仅提 高了单片机 硬件设备和硬件系统在智能遥控领域的广泛 应用 而相对了在硬件设施上使用了红外线的遥控技术 也同时大大拓宽了硬件设施的应用范围 在不久的将来 我相信 人们对于红外遥控控制的运用 会变得越来越广 2 设计要求设计要求 基本功能要求 1 以一个单片机作为控制遥控器 另一个单片机控制系统为 被遥控对象 2 用遥控器的 10 个遥控开关 控制遥控对象的 10 个电源开 关通断 3 能实现 10 个电源开关状态显示 4 能实现定时开关某一个电源开关 扩展功能 1 能实现灯光亮度连续调节 2 能根据不同电器实现不同时间通断控制 3 其他扩展功能 3 方案设计方案设计 3 1 红外遥控发射电路的方案 采用指令键产生电路产生不同的控制指令 单片机进 行状态的编码 直接由单片机的口输出方波信号控制红外 发射管进行发射 红外发射管采用普通的红外发射二极管 3 2 红外遥控接收电路的方案 遥控系统采用红外线脉冲个数编码 直接利用单片机 软件解码 实现功能的遥控 3 3 单片机的选择 本设计所编写的程序比较简单 功能也比较少 所用到的 输入输出端口也不是很多 所以我们决定用 STC89C52 单片 机来完成本设计 既方便也很实用 3 4 红外遥控系统电路的原理框图以及各部分作用 各部分作用 1 行列式键盘 行列式键盘又称为矩阵式键盘 用 I O 线组成行列结构 按 键设置在行列的交点上 行列式分别连接到按键开关的两 端 键盘中有无按键按下是由行线送入扫描字及列线读入 列线状态字来判断的 有键按下时通过查键并执行键功能 程序 2 红外线发射电路 遥控器信息码由单片机的定时器 1 中断产生 40KHZ 红外线 方波信号 由 P3 5 口输出 经过三极管放大 由红外线发 射管发送 3 单片机 单片机用于输出方波信号控制红外发射电路的工作 3 5 红外接收部分原理框图以及各部分作用 各部分作用 1 5V 电源电路 给单片机最小系统 控制电路提供以及红外接收电路提 供电压 2 红外接收电路 红外接收电路把接收到的状态在内部进行解码 从而实 现不同的功能 3 控制电路 通过发射电路的按键实现对控制电路的控制作用 3 6 系统硬件电路的设计 红外发射电路 红外接收电路 4 遥控发射及接收控制电路的软件设计遥控发射及接收控制电路的软件设计 4 1 软件设计流程图 4 1 1 键扫描程序流程图 相应的按键扫描程序 include define uint unsigned int define uchar unsigned char define keyrow P0 define keyline P2 uchar code keyv 8 1 2 4 8 uchar keyscan void uchar keyval i keyval 0 keyrow 0 xfe if keyline 0 xff for i 0 i 4 i if keyline keyv i keyval i 1 keyrow 0 xfd if keyline 0 xff for i 0 i 4 i if keyline keyv i keyval i 5 keyrow 0 xfb if keyline 0 xff for i 0 i 4 i if keyline keyv i keyval i 9 keyrow 0 xf7 if keyline 0 xff for i 0 i0 m delay1ms 1 ET1 1 TR1 1 delay1ms 1 ET1 0 TR1 0 remoteout 0 delay1ms 10 40KHZ 发生器 void time intt1 void interrupt 3 remoteout remoteout 4 1 3 遥控发射主程序流程图 遥控发射的主程序流程图 首先初始化程序 然后调用键扫 描程序 相应的发射主程序如下 include define uint unsigned int define uchar unsigned char extern uchar keyscan void extern void init void extern void send infrared uchar keyval void delay1ms uint time uint i j for i 0 i time i for j 0 j 110 j void main uint keyval init while 1 keyval keyscan while keyscan if keyval send infrared keyval 4 1 4 中断程序流程图 中断过程 首先判断低电平脉宽度是否大于 2ms 若脉宽不到 2ms 则中断返回 若低电平大于 2ms 则接收并对低电平脉冲 计数 接下来看判断高电平脉宽度冲是否大于 3ms 若脉宽不 到 3ms 则返回上一接收计数过程 若高电平脉宽大于 3ms 则 按照脉冲个数至对应功能程序 此时中断返回 相应的中 断程序如下 include include define uchar unsigned char define uint unsigned int sbit remotein P3 1 extern void delay1ms uint time uchar value 初始化 void clearmen void EX0 1 EA 1 外中断遥控接收函数 void intt0 void interrupt 0 uchar keyval k sign EX0 0 sign 0 keyval 0 if remotein 0 delay1ms 2 if remotein 0 while 1 while remotein 0 keyval k 0 delay1ms 1 while remotein 1 delay1ms 1 k if k 2 value keyval 1 sign 1 break if sign break EX0 1 4 1 5 遥控接收器主程序流程图 相应的接收主程序 include include define uchar unsigned char define uint unsigned int extern void clearmen void extern uchar value uchar temp void delay1ms uint time uint i j for i 0 i time i for j 0 j 110 j void youyi void 7 个流水灯逐个闪动 uint i temp 0 x01 for i 0 i 8 i P2 temp delay1ms 1000 temp 1 void zuoyi void 7 个流水灯反向逐个闪动 uint i temp 0 x80 for i 0 i 1 void quanliang void uint i temp 0 xfe for i 0 i 8 i 7 个流水灯依次全部点亮 P2 temp delay1ms 1000 temp 1 void fquanliang void uint i temp 0 x7f for i 0 i 1 void main clearmen P0 0 xff while 1 if value 1 P2 0 xfe if value 2 P2 0 xfd if value 3 P2 0 xfb if value 4 P2 0 xf7 if value 5 P2 0 xef if value 6 P2 0 xdf if value 7 P2 0 xbf if value 8 P2 0 x7f if value 9 P1 0 xfe if value 10 P1 0 xfd if value 11 youyi if value 12 zuoyi if value 13 quanliang if value 14 fquanliang 5 演示结果演示结果 当按下键 1 时 发光二极管 LED1 亮 当按下键 2 时 发光二极管 LED2 亮 当按下键 3 时 发光二极管 LED3 亮 当按下键 4 时 发光二极管 LED4 亮 当按下键 5 时 发光二极管 LED5 亮 当按下键 6 时 发光二极管 LED6 亮 当按下键 7 时 发光二极管 LED7 亮 当按下键 8 时 发光二极管 LED8 亮 当按下键 9 时 发光二极管 LED9 亮 当按下键 10 时 发光二极管 LED10 亮 当按下键 11 时 发光二极管 LED8 LED1 依次渐亮 当按下键 12 时 发光二极管 LED1 LED8 依次渐亮 当按下键 13 时 发光二极管 LED8 LED1 依次全亮 当按下键 14 时 发光二极管 LED1 LED8 依次全亮 附录 1 程序 include define uint unsigned int define uchar unsigned char define keyrow P0 define keyline P2 uchar code keyv 8 1 2 4 8 uchar keyscan void uchar keyval i keyval 0 keyrow 0 xfe if keyline 0 xff for i 0 i 4 i if keyline keyv i keyval i 1 keyrow 0 xfd if keyline 0 xff for i 0 i 4 i if keyline keyv i keyval i 5 keyrow 0 xfb if keyline 0 xff for i 0 i 4 i if keyline keyv i keyval i 9 keyrow 0 xf7 if keyline 0 xff for i 0 i0 m delay1 ET1 1 TR1 1 delay1ms 1 ET1 0 TR1 0 remoteout 0 delay1ms 10 40KHZ 发生器 void time intt1 void interrupt 3 remoteout remoteout extern uchar keyscan void extern void init void extern void send infrared uchar keyval void delay1ms uint time uint i j for i 0 i time i for j 0 j 110 j void main uint keyval init while 1 keyval keyscan while keyscan if keyval send infrared keyval 接收系统 include include define uchar unsigned char define uint unsigned int sbit remotein P3 1 extern void delay1ms uint time uchar value 初始化 void clearmen void EX0 1 EA 1 外中断遥控接收函数 void intt0 void interrupt 0 uchar keyval k sign EX0 0 sign 0 keyval 0 if remotein 0 delay1ms 2 if remotein 0 while 1 while remotein 0 keyval k 0 delay1ms 1 while remotein 1 delay1ms 1 k if k 2 value keyval 1 sign 1 break if sign break EX0 1 接收主程序 extern void clearmen void extern uchar value uchar temp void delay1ms uint time uint i j for i 0 i time i for j 0 j 110 j void youyi void uint i temp 0 x01 for i 0 i 8 i P2 temp delay1ms 1000 temp 1 void zuoyi void uint i temp 0 x80 for i 0 i 1 void quanliang void uint i temp 0 xfe for i 0 i 8 i P2 temp delay1ms 1000 temp 1 void fquanliang void uint i temp 0 x7f for i 0 i 1 void main clearmen P0 0 xff while 1 if value 1 P2 0 xfe if value 2 P2 0 xfd if value 3 P2 0 xfb if value 4 P2 0 xf7 if value 5 P2 0 xef if value 6 P2 0 xdf if value 7 P2 0 xbf if value 8 P2 0 x7f if value 9 P1 0 xfe if value 10 P1 0 xfd if value 11 youyi if value 12 zuoyi if val

温馨提示

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

评论

0/150

提交评论