将其隐藏在您的客厅中,然后笑起来,因为TiVo盒子似乎是由要求观看俗气的购物频道的恶魔所拥有的。无论您的最终目标是关闭附近的每台电视,还是构建通用的Siri控制的遥控器,该项目都是学习IR控制和接收器基础知识的一个很好的起点。
在此“恶作剧",我们将制造一种设备,该设备可以记录,然后回放一系列IR远程命令。它可以与使用IR遥控器的任何设备一起使用,甚至可以同时使用多种设备-最多记录10次按键。
组件
以下是列表该项目需要的东西:
接线
解决此电路问题三个部分–切换有点麻烦,但是其他一切都很容易。请记住,LED的平整表面的短脚是阴极(负极或接地)。
接收信号
继续并打开 libraries / IRremote / IRrecvDemo 示例代码。确保正确设置 RECV_Pin ,进行编译和上传,然后以9600波特打开串口控制台。拿起您必须要拿到的遥控器,将其对准接收器并开始按下按钮。不同的按钮将产生不同的代码。有些会指示长按输入初始代码,然后输入 FFFFFF ,而不同的遥控器可能会简单地再次重复该代码。
有关所接收数据的更多详细信息,请请查看 IRrecvDump 示例,该示例将指示接收到的信号类型(在这种情况下为32位NEC)和原始值。众所周知,但是在大多数情况下,您只需要解码后的值。
重复信号
我们今天不会从头开始编写恶作剧,所以请继续并查看 IRrecord 示例。这里的代码复杂度大大增加,但是处理所有类型的IR代码几乎全部都是应付的–基本上,这就是循环内发生的事情:
此示例的最大局限性是它只能与一个信号一起工作。一次输入代码,因此如果您按下另一个远程按钮,它将覆盖最后一个。该按钮仅重播它收到的最后一个信号。编译并运行代码,以便您可以使用此基本信号转发器。为了播放单个信号,它可以正常工作,但是在恶作剧或其他情况下几乎没有实际用途。
恶作剧!
让我们对其稍加修改以记录10个或更多的调皮捣蛋。信号。您可以在此处找到完整的修改后的代码,但这是我所做的更改的概述,以防您想自己进行编程:
请注意,一旦内存已满,Arduino上的指示灯LED(引脚13)将激活。现在,您必须记录10次按钮按下-不少于一次-重放模式将在每次按钮重放之间等待1秒。它正在起作用:
您可以进行更多的IR恶作剧,或者认为这是一个史诗般的家庭自动化项目的良好开端;并且不要忘了检查所有其他Arduino项目。在评论中分享您的创作(或问题),请在您最喜欢的社交网络上分享您的文章,以表示对本文的感谢!
图片来源:DaGoaty