成为订阅者(免费)

加入29,000名其他订阅者以获得用户销售折扣和 其他免费资源。
:
:
大学教师 '担心 - 您的邮件地址完全是 安全的。我保证使用它 只要 到 send you MicroZine.

通用串行红外接收器。

您可以使用此通用红外接收器(UIR)项目来控制您的 PC:

  • 启动Windows程序,
  • 设置Windows卷控制,
  • 甚至在屏幕周围移动鼠标!

所有触摸按钮 - 实际上有电视遥控器!


红外接收器块图

它使用PIC微控制器来表征解调的红外线 信号,然后将其作为串行数据流传输到PC。  

在PC上运行的软件识别每个按键的数据流(实际上 PC软件必须学习每个钥匙按下的数据流)并激活 您指定的程序(或事件)。由于软件可以学习 按键按下您可以使用任何遥控器。电视,视频,DVD, satellite etc.  

It'甚至很好地搭配多个遥控器,这样你就可以使用一组中的任何一个 遥控器控制PC

序列规范 红外接收器项目。

波特 Rate 57600 Baud
内部的 8Mhz 
删除控件 type 任何(点 控制在它并让PC软件了解它 codes).


注意:一些遥控器需要 两个按键(如果按相同的键)输出反相密钥 重复键的顺序。如果按下不同的键,则它将其工作为 normal remote.

串行红外接收器:项目详细信息

串行红外接收机项目
编译器 Mikrolectronika mikroc.  自由 !
目标 16F88(重新标准到具有内置USART的其他照片)。
软件级别 简单。
软件说明 没有特别的笔记。
硬件级别 简单。
硬件笔记 没有特别的笔记。
项目版本 1.01
项目文件 输入您的详细信息以获得 下载链接
并获得微控制器通讯:

(注意:您的电子邮件安全它永远不会 be sold or rented).
你会 get 一切 C源代码和十六进制文件。

注意:检查您的电子邮件以获取项目代码下载 link.

串行红外线接收器如何工作

该项目使用标准红外探测器模块(其中一个引脚中的一个 设备)作为主输入。

It'不值得制作自己的电路 它不会符合三个引脚解调器模块的性能。

我有一个我在网上发现的一些电路,但这些电路使用了PIN二极管 和一个高阻抗放大器。 lm3140 - 但电路实际上是 当光线闪耀时(甚至台灯) - 所以 它们对IR光不敏感 - 销二极管对任何光线反应 资源。你可以在大约六英尺左右得到一些用处,但很多 工程已经进入了三个引脚模块,所以它真的值得使用 他们,他们很便宜。

模块内部是PIN二极管,AGC电路,带通滤波器,控制逻辑 和输出探测器。数据表指定15米(45英尺)的使用 可能是30米(90英尺)的最大!这些是非常好的探测器 对阳光不敏感(在引脚二极管上有物理过滤器和 电子带通滤波器)。

如果您只有USB端口,该怎么办

今天的PC只有USB端口,因此您需要一些适配器硬件允许 串行RS232操作。有两个选项:

  • USB数字串行接口
  • USB RS232适配器

这两者都非常便宜和有用。您可以了解更多信息 USB适配器 在 the link.

串行红外线接收器

串行红外线如何 receiver works.

这个项目比应该的时间更长,我已经最终得到了远远 比我的初始尝试更小的源代码!首先,我使用了捕获 CCP和Timer1计时器的设施,以准确测量每个时段 高低解码的IR。这结果太准确了!

IR信号代码解码 accuracy

你不'在这个项目中需要准确性 - IR代码设计不需要 准确测量,如果您在边缘尝试略有变化 位置或测量精度导致输出编号更改。自从此以来 PC中的解码器软件依赖于可重复的数据流(轻微 变化)此方法不起作用。

设计IR信号,以便您可以对其进行样本,但这需要 您提前知道代码序列(或编码例如RC5),以便您可以 从开始序列到比特位置的精确中间的时间。

由于此项目允许您使用任何遥控单元,因此编码 序列预先知道,所以解决方案是样本 高频的远程控制序列。  

问题是,如果您开始从第一个上升沿解码 由于遥控输出的略有变化(或 采样边缘与输入转换同时发生)导致随机 数据流输出不能可靠地由PC软件解码。

红外线解码 solution

该解决方案是从每个上升和开始的输入数据进行采样 在重置比特测量时段计数器(周期计数器)的下降沿。  在每个样本点(这里约为50us),期间计数器是 递增。这给出了一个代表每个高或低的时段的数字 part of the signal. 

50us采样周期约为预期信号周期的十倍(IR 代码通常使用500us最小时期)所以这给出了一个很好的时期 measurement.

请注意,周期计数器长为8位 对于长输入序列(高或低)的计数器包裹 - 这 由于期间计数器始终产生相同的值,因此无关紧要 相同的输入序列,这就是PC解码器软件正在寻找的 for.

RS232 Output

在每个信号过渡时,周期计数器值被发送到RS232 界面所以该值表示上一个的50us句号 框架。发送的值是原始二进制编号,您无法在其中查看它 当你赢了时,终端如Tera术语'T获得可读价值。

为了停止序列,永远不会生成RS232数据,计数器值是 监控直到它超过200.如果同时输入输入的值 是零,然后输出停止和控制返回到等待下一个 中断I.E.下一个遥控器键按。

注意:内部USART大约需要30us到 设置,然后熄灭并自行传输字节,在57600 波特大约需要170us,所以下一个传输前有充足的时间 (500us IR代码期)。您可以使用较低的波特率e.g 38400 still fit.  

如果您使用了诸如9600等波特率,那么一个字节将需要〜1ms来传输 这将意味着丢失的时间数据 - 它可能是仍然可以获得的 指示代码周期,但可能并不总是有效。

个人电脑 Software

在PC上运行的主要红外控制程序是 Winlirc. 这允许控制 PC通过串口输入(或USB数字串行端口)。

测试

我已经测试过了 具有以下遥控器的红外接收器和PC远程控制:

  • JVC.
  • 汤姆森
  • 飞利浦
  • 三星
  • 格伦格
  • 媒体

这些都有工作精细 - 有些你必须按两次按钮作为代码 交替以适用于相同的键。它希望它与任何遥控器一起工作 控制器,因为这些表示各种不同的编码方案。

串行红外接收器硬件

串行红外线远程接收器原理图。
(点击打开PDF)

红外接收器远程接收器原理图

通用红外接收器使用IR解码器模块(注意那里 没有标准的引脚,你必须检查你的版本's pinout using its data sheet).

电路没有什么困难,它只是由一张照片组成 micro, an ICSP. 接口和RS232级别 translator.

串行红外接收器软件

该软件包含在两个文件中:

红外线接收器 Source Files

16F88-Infrared-Decoder.c
比特

比特 包含 编译器独立的位操作宏。

红外线接收器 Project Files

16f88_infrared_decoder.mcppi.

红外线接收器 Output files:

16f88_infrared_decoder.hex.

有关编译这些文件的教程 点击 here.

您可以重新编译串行红外接收器文件以检查 代码的操作(使用内置模拟器)或更改源代码。 十六进制文件包含在下载中。

您可以通过电路中的PIC编程 ICSP. connector.

16f88_infrared_decoder.c.

main()唯一的用途是初始化端口和中断 - 它 进入等待中断的无限循环。

输入引脚RB0用作中断源然后轮询。一个中断 对于RB0,设置在发生上升沿时触发(可能是 作为解码输出的下降沿反转 - 但它的工作原理!)

当中断发生时,调用例程Sample_Bits - 注意这是 在中断内,因此sample_bits成为中断例程的一部分 itself.

Sample_bits()采取控制并轮询如前所述的RB0输入。  它还在适当点返回对中断例程的控制; 等待下一个遥控键按下。


新的! Comments

让你说到你刚刚阅读的东西!留下下面的框中的评论。



从PIC跳跃 红外线接收器 to
最佳微控制器项目主页。


隐私政策 | 接触 | 关于我

网站地图 | 使用条款


 ezoic. 报告此广告

访问我们的Facebook页面:

   点击这里



最近的文章

  1. 如何使用ADS1115

    使用ADS1115精度16位ADC进行教程进行低功耗。

    阅读更多

  2. arduino. 模拟输出...易模拟输出生成

    arduino. 模拟输出:如何创建最精确的PWM模拟输出以及如何创建模拟PWM正弦波。

    阅读更多

  3. 数号和等效的快速宏。加快代码!

    了解DigitalWrite()的工作原理......现在使用17倍宏宏!

    阅读更多

  4. TCS230颜色传感芯片:如何运作以及如何使用它。

    如何使用TCS230(/ TCS3200)彩色检测器芯片并轻松将其添加到您的任何项目中。

    阅读更多

  5. 如何使用ADXL345进行运动感测等。

    使用ADXL345 Acellerometer,您可以检测到16G!您还可以了解如何使用它来点击检测等。

    阅读更多

  6. HMC5883L 3轴数字MAGENTOMTER如何运作

    HMC5883L - 如何制作数字罗盘,了解HMC5883L和QMC5883L之间的差异以及它们是否兼容。

    阅读更多



读者 Comments

"I wanted to thank
你这么好
对于所有信息
你已经提供了
你的网站's

高超 极好的."

- 逃亡Potthath.

"This site really is
最好的和我最喜欢的。
我发现这里有很多很有用
项目和提示。"

- 米兰

Bursach.<at>gmail.com<

"Awesome site,
非常,非常容易和好
导航!"


-
Matt_tr. <at>
wolf359.cjb.net.


学习微控制器

"Interested in
微控制器?"

注册
免费7天指南:

自由 GUIDE : CLICK HERE


"I am a newbie to PIC
我想说
 how great your
网站一直在为我。"


- 戴夫

de_scott.<at>bellsouth.net

"Your site is a great
和完美的工作。
恭喜。"


- SURESH.

IntegratedInfosys.<at>
Yahoo.com.

"I couldn't find the correct
要定义的词语
你的网页。

非常有用,揭开,
诚实明确。

非常感谢
你的时间和作品。
问候。"


- Anon.

回到顶部