基于pic单片机学习型红外遥控器内容摘要:

码遥 控 接 收 器遥 控 发 射 器 图 遥控接收框图 由 0、 1组成的 32 位 的 二进制码 在 经 过特定的恒定 载频 再一次进行调试,用来提高它的发射 效率, 以减小对能源的浪费。 经此过程以后才会用发射管对外发射信号。 遥控编码 是由连续的 32 个二进制数字组成 , 前 16 个二进制 数字作为识别码 , 用来区分不同的遥控对象 , 以避免不同遥控器所发出的命令互相干扰。 后面的 16 个二进制数字为操作码和反码。 因此它可以拥有 128 个不一样的编码组合,完全能满足普通用户的需求。 遥控器的按键被触发以后,会不间断的发出 同一种 32位二进制码, 而且是周期性的发送,其发送周期 约为 100ms。 一组码的具体发送时间会根据 0和 1的个数不同而有所不同,大体所需要的时间在 40MS 到 65MS 之间。 假设一个按键被触发的时间超过 36MS 时, 振荡器 会将芯片激活 , 此时会 发射一组 时间为 108ms 的编码脉冲 ,此 发射代码由起始码 、 结 果码 、 8位数据码和这 8 位数据的反码 、 高 8位地址码 、 低 8 位地址码组成。 当按键出发时间超过108ms 的时候 , 在接下来所发射的代码会有所改变,它会只由 起始码和结束码两种编码 组成。 0 和 1 的识别才是解码的关键所在。 在上述定义上可以发现 0 和 1 均可以由一样的 低电平开始, 但 0 和 1 还是有区别的,他们的代码宽度会有所不同, 1的代码宽度几乎是 0 的三倍。 因此在区别 0 和 1 上是不能从电平高低来区分的,他只能用代码宽度来区分 0 和 1。 开始的时候会有 以上的延时时间,延时过后如果读到的电平为低电平 , 那么说明此时编码信号为 0,否则为 1(高电平信号)。 但是为了保险起见掩饰的时间必须要大于编码 0 的所需时间但又不能大于编码 1 所需要的时间,不然的话此电位是 0 的话会被误读成 1。 综上考学士学位论文 11 虑取 0 和 1 的中间值最为合适。 根据码的格式, 在等候 起始码和结果码 都 完成以后 后才能 进行 0 读码。 接收器 和 解码 过程 :红外线接收器是一种 将接收器和放大器整合在一起的接收器 , 在不添加其它器件的情况下,就可以独立完成从接收到输出的所有内容 , 而它的体积相对来说比较小,和普通的三极管相差不大 , 适合作用在红外遥控及接收上,性能非常的稳定,价格适中。 红外遥控器软件解码原理及程序 :红 外一开始发送一段 13ms 的引导码,引导码由 9ms 的高电平 及 的低电平组成,跟着引导码是系统码,系统反码,按键码,按键反码,如果按着键不放,则遥控器则发送一段重复码,重复码由 9ms 的高电平, 的低电平,跟着是一个短脉冲。 红外解码原理 信号的传输就必须有载体,正如红外通信他的传输载体就是红外线 , 当红外线在空气中传播的时候,就会承载着有效信息进行传播,整个过程除了载体、介质意外还需要红外发射器和接收器,这是这个信号传送的核心所在。 作为发射端,数字信号作为有效信息,经过有效的处理以后于红外 信号整合在一起,有发射器发射到介质当中;作为接收端,接收器会把感应到的红外信号进行处理,转换成原始数字信号。 本文 论述了 一种基于单片机 PIC16F877 红外通信设备,它不仅成本较低,在性能方面也非常的稳定。 以下分别对红外发射、接受和其中的一些重要的协议进行了简单的论述。 红外发射端发送数据时,是将待发送的二进制数据调制成一系列的脉冲串信号后发射出去。 红外载波为频率 38KHz 的方波,采用脉宽调制 PWM 方式发送,通过待发送二进制数据的 “0” 或 “1” 控制两个脉冲串之间的时间间隔,即PWM 的占空比。 红外载波可以使用单 片机内部的定时器的 PWM 功能实现,也可以通过外围硬件电路实现。 利用单片机内部定时器的 PWM 功能产生红外载波利用单片机内部定时器的 PWM 功能产生红外载波信号。 红外发射: 红外发送 端是由 PIC16F877 的两 I/O 脚控制。 I/O 接口处会自动 产生 一定宽度的 方波 脉冲 信号, 以此来分别代表 0和 1。 当输出端口处于低电平触发时,或门电路会允许载波信号的通过,载波信号为 38KHZ 的固定频段的信号 , 不然的话或门电路是不允许载波信号通过的。 经此过程,输出端会产学士学位论文 12 生间断的载波信号。 这个信号由放大电路放大后再由电阻限流后传送到发送 端口,有发射器发出红外信号。 红外二极管作为红外发送设备,将完成光电信号的转换。 这是一种间断式的红外信号。 因为脉冲的宽度是不会改变的所以可以通过红外脉冲信号之间的间距大小来判断传送的信号是 0 还是 1。 红外接收: 红外接收采用 HS0038B 红外接收器。 红外接收电路的原理是:当接收到载波信号, 接收器端口处会相应的输出低电平信号 , 不然的话会输出高电平信号。 进而才能将间断的红外信号进行解调,转换成为连续的方波信号 ,在经过 PIC 单片机的内部处理以后,才恢复原原有的数字信号。 HS0038B 是一种比较小的接收型器件,能够 独立完成红外信号的接收 , 因此不需要再加电阻或其他部件来进行转换。 和其他类似产品比较, HS0038B 的优点是 :在一般的环境下它的输出非常稳定,当外界干扰很大时,它依然能够保持稳定的输出。 总体来说,它的价位在接受范围内,有很强的抗干扰能力。 红外通讯的关键在于红外数据的同步,能够正确识别接收到的红外信息代表何意义。 红外通讯系统可以采用同步帧协议,也可以采用类串行通信协议。 采用前者时,二次系统的关键是在于它的数据同步传输 , 本系统可以识别出来接收到的红外信号所包含的有效内容。 红外通信系统可以采用以上两种通信协议中 的任何一种。 红外通讯中的差错控制方式采用自动 来 请求重发 的 方式。 在接收过程中数据包中所包含的地址码由接收端接受并与其匹配。 假如地址码与其不匹配的话,数据包将会被丢弃掉,然后申请重新发送数据包 ; 如果其地址码与其相匹配 , 然后 检查 其 校验码, 只有校验码无误的情况下 , 数据包中的数据才会被其识别 , 此后向发送端反馈确认收到有效信号的信息 , 假如校验码与其不相匹配的话,则会向发送端申请重新发送数据包。 即在未完全接收到数据包时,只要出现错误均会反馈重新发送数据包的申请。 采用第二种通信协议的时候 ,传送的数据格式 与 NRZ 格式差不多 ,每 一 个数据帧 是由 一个起始位 0、 2 个停止位 0 和 8 个数据位 组成。 在没有接收到发送端传来的信号时 , 此时的定时器不在工作状态。 当开始接收信号时 ,接收器 在 接收到数据 的 起始位 为 0时,此时输出的信号为低电平信号 , 触发将被终止,然后启动定时器。 定时器将两次终端间隔记录下来 , 这学士学位论文 13 样就可以判断出该信号的起始位置是不是为 不是,复位定时器 将会 重新去 检测 其 起始位 电平信号。 假如是 , 数据将被接收 , 由定时器的计数 判断是 0还是 1, 在数据位接收完毕后再去接收停止位信息。 第二个停止位是用来检查前面的一个方波 是否 和第一个停止位相对应。 假如是的话 , 并且已经正确的 接收 到了 起始位 、 数据位 、 停止位,则 被判断为 数据帧 的 接收 无误 , 然后去接受下一个 ,否则 的话 接收 信息被判断接受 错误, 此时的复位定时器将会重新去检测起始位。 1. 系统方案论证和选择 : 红外遥控设备可以在很多场合使用 , 尤其是哪些信号不好或干扰较强的环境中。 以下是本文论述的两种可行方案 , 分别论述了其实现方法和它的优缺点,经过对比对方案进行选择。 方案一:此方案中, 采用 遥控器 来 作为控制信号 的 发出 设备 , 在遥控器的设置键被触发后,接收器将会接收到遥控器的信号 , 此信号在被解码后 送到单片机 中 , 这样可 以让单片机去判断这个信号是不是所需要的设置信号。 如果是的话,开启程序,此后接收到的信号就是要设置的红外信号 , 接收器在接收到信号后经放大、解码传送到单片机中,然后其对此信号进行确定再进行设置 ,接着触发按键表示确认 , 接收器 接收到 此 信号 经放大解码 再送到单片机中, 经过单片机查表后,判定此信号未确认信号后令设置生效,达到控制电源通断的目的。 图 HS0038 实物引脚图 学士学位论文 14 方案二:此方案中, 控制信号的发送的设备是 家用电器 的 遥控器 , 当遥控器的设置键 被触发 , 接收器接收到此控制信号 , 然后完成光电转换过程 , 最终传送 到单片机中 , 在 解码完成后 单片机将查询表单确认此信号是否为 设置信号,如果是 , 设置程序将被开启 , 因此后面接收到的信号 就是设置的时间信号了,解码后 查表 来 判断数值是多少,然后 对其进行 设置, 完成此过程后要进行确认 ,在 遥控器发 送 出确认信号 之 后,单片机 接收此信号后查表判定 这是确认信号后,然后 执行确认指令设置生效 ,从而达到控制电源通断的目的。 方案一为硬件解码方案, 此方案 需要使用与遥控器相配套的 专业的 解码器芯片, 但是此芯片并非流通芯片 ,价格也较贵, 也可以自己去研发解码电路,但是此电路很复杂,将耗费大量的精力。 此方案在使用 方面并不便利,可靠性上也不是很高,所以排除方案一。 方案二为软件解码方案, 此方案不用去看 遥控器芯片 的 型号,只需 要去 检测 其 发射编码,然后用软件对它进行处理,得到所要的信息。 软件解码 的优点很多,比如:使用 灵活、 硬件需求较少 、可靠性高,成本低等特点。 经以上的论证, 选择 采用软件解码方案, 费用低 , 不需要耗费大量精力即可完成 , 可靠性较高。 图 HS0038内部结构图 2. 硬件组成 : ( 1)正 5V 恒压电源 ; ( 2) 微控制器 PIC16F877 系统 ; 学士学位论文 15 ( 3)红外遥控 接收电路 ; ( 4)保护电路 和存储电路 ; ( 5) 执行电路。 红外接收电路一体化的红外接收装置将遥控信号的接收、放大、检波、整形集于一身,并且输出可以让单片机识别的 TTL 信号,这样大大简化了接收电路的复杂程度和电路的设计工作。 在本系统中采用红外一体化接收头 HS0038。 HS0038 抗干扰能力强、 灵敏度高 、 功耗低 ,有效接收距离可以达到 30M。 键盘控制 按键 电路如下图。 键盘采用行列式和外部中断相结合的方法, 为了节省单片机的 IO 口资源,系统设计时,采用矩阵键盘的形式作为系统设计的键盘输入电路。 矩阵按键又叫做行列扫描式按键,是用单片机的 两条 I/O 口连接到按键两端构成的,在交点处为两个 I/O 口的交点,将它们分为行 I/O 口与列 I/O口,行 I/O 口为 PA31~PA33,列 I/O 口为 PA34 与 PA37,每一条列线和行线都有一个唯一的交汇点,则组成的按键个数为 12 个,当需要判断是哪个按键被按下时,首先判断哪个列按下,将行全部清 0,则有按键动作的那个行与列的交点处就会将行列端接,那么就会有两个 I/O 口同时为 0,将这时为 0 的 I/O 口找出,然后再同样将列置 0,判断行值,找出行值为 0 的点,然后将行列组合后就能判断出来哪个按键被按下。 系统设计时,采用矩阵键 盘的优势是,可以节省单片机 IO 口资源,从而保证单片机可以有足够的资源控制其他外围设备的工作。 S1SWPBS2SWPBS3SWPBS4SWPBS5SWPBS6SWPBS7SWPBS8SWPBS9SWPBS10SWPBS11SWPBS12SWPBhang1hang2hang3lie1 lie2 lie3 lie4 图 键盘接口电路 学士学位论文 16 LCD 显示电路 在单片机的设计当中最常使用到的显示器件主要以字符型 LCD 为主。 1602型 液晶 显示模块 具有诸多优点如:灵巧方便、能耗较小、分辨率较高。 此型号的 LCD 显示模块拥有两行显示部分一共 16个字符 , 正常的 工作电压为 5V, 同时还具有背光功能,还可以对字符的对比度进行调节。 1. 基本操作程序 读状态:输入: RS=L, RW=H, E=H 输出: D0~ D7=状态字 读数据:输入: RS=H, RW=H, E=H 输出:无 写指令:输入: RS=L, RW=L, D0~ D7=指令码, E=高脉冲输出: D0~ D7=数据 写数据:输入: RS=H, RW=L, D0~ D7=数据, E=高脉冲 输出:无 2. 系统中应用晶液显示器优点: 发光恒定,色彩和亮度变化不大 LCD 画质比较高,还不会出现显示页面抖动的现象。 数字 化 接口: 由于其接口为数字化的,因此与 PIC16F877 连接的时候更加简洁 ,操 做 更加 简单。 LCD 显示模块不仅 体积 比较 小 而且 重量 很 轻。 液晶显示器 是 通过显示屏上的电极 改变来 控制 内部的 液晶分子 处于不同的 状 态来达 到 显示的目的, 他比传统显示器跟轻巧、功能更完善。 在功耗上,相对传统显示器而言, LCD 的功耗 大部分是在 内部的电极 及其 驱动 IC上,因而耗电。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。