如何用带定时功能的电视遥控器控制家电


木易
转载
发布时间: 2025-08-15 16:58:59 | 阅读数 0收藏数 0评论数 0
封面
红外通信在进入消费市场 25 年后,依然备受关注。无论是 55 英寸的 4K 电视,还是车载音响系统,都需要红外遥控器来响应我们的指令。业界有很多技术,例如蓝牙、射频甚至 WiFi,但我们长期以来一直坚持使用红外通信,这背后有一些非常充分的理由。首先,它们是最便宜的解决方案,价格低廉,而且性能可靠,最重要的是易于使用。此外,与射频或蓝牙遥控器相比,该电路的功耗也非常低。因此,在今天的视频中,我们将创建一个可以使用红外遥控器控制家用电器的项目。此外,我还将实现一个定时器功能,无需我们直接参与即可打开/关闭设备。从框图、代码、电路图到最终的 PCB 设计,我将详细指导您完成整个过程。
1

收集所有必需的组件

首先根据给定的 BOM 收集所有必需的组件。

项目物料清单


  1. DC 母头适配器 X1
  2. 滑动开关×1
  3. 公头
  4. 1N4007 二极管×5
  5. 100uF 电容 x 3
  6. 100nF 电容 x 4
  7. 7805 稳压器和散热器 X 1
  8. 3mm 红色 LED 灯珠 X2
  9. 3mm 绿色 LED X 2
  10. 28 针 IC 底座 X 1
  11. Atmega328P-Pu X 1
  12. 16.00 MHz 晶体振荡器
  13. 22pF 电容×2
  14. 330E 电阻器 X 12
  15. 1K 电阻×2
  16. 10K 电阻×1
  17. 100K 电阻 X 2
  18. 470E 电阻器 X 2
  19. 2N3904 晶体管 X 2
  20. 2N2222A 晶体管×2
  21. 1838 红外接收器 X 1
  22. PC817 X 2
  23. 5v SPST 继电器 x 2
  24. 3 针接线端子 X 2


这些是完成这个项目所需的主要组件。除此之外,你还需要一些基本的焊接设备、五金配件、面包板和一个 Arduino。

我不会在这个项目中使用普通的 Arduino 开发板,而是会使用 DIY 开发板。代码将使用 Arduino IDE 完成,所有操作与其他 Arduino 项目相同。但在最后一刻,我会移除预编程的 IC,并将其安装到我的 PCB 上。

你可以观看我的这个视频,了解如何在家制作 DIY arduino UNO -

https://bit.ly/2BoLmuO

一旦你有了所有这些物品,就可以开始绘制电路了。

2

设计工作电路

我使用名为 Easyeda 的在线平台来设计电路。

该电路主要有以下模块 -


  1. 电源模块——将 9-12V 直流输入转换为 5V 直流为电路供电。
  2. 微控制器 - 我将使用 ATmega328P IC 作为微控制器。它和任何 arduino UNO、nano 或 Pro Mini 上都能找到的相同。
  3. 红外接收器——我将使用连接到微控制器的 TP1838 红外接收器模块。
  4. 定时器指示器 - 3 毫米红色 LED 将指示定时器的状态。
  5. 七段显示器 - 2X7 段 CA 显示器将通过字母数字字符显示视觉信息。
  6. 继电器驱动器 - 两个继电器将通过适当的继电器驱动电路与微控制器连接。


对我有用的电路是这个 - https://bit.ly/2EvVjee

观看此视频了解如何制作 arduino 继电器驱动板 -

https://bit.ly/2zZiZn7


3

设计PCB并订购

电路设计完成后,就该制作 PCB 了。我使用了 JLCPCB 网站制作我的原型板。我想,他们是近年来 PCB 制作领域最好的公司之一。

电路设计完成后,将电路图转换为 PCB,并在 Easyeda 网站上进行设计。请耐心等待,因为任何错误都可能毁掉你的 PCB。生成 Gerber 文件前请仔细检查。你也可以从这里查看 PCB 的 3D 模型。点击“制作 Gerber 文件”,然后就可以直接通过 JLCPCB 订购这块电路板了。上传 Gerber 文件,选择合适的规格,不要更改此部分的任何内容。保持原样。这些设置已经足够好了。下单吧,一周内应该就能收到。

1:1 比例的 PCB PDF - https://bit.ly/2Enl2oh

PCB Gerber 文件 - https://bit.ly/2zXT0g1


4

获取红外遥控器的十六进制值

在此步骤中,您需要知道遥控器传输到 Arduino 的十六进制值。我们稍后会在最终代码中用到此代码。为此,您需要 Arduino 的 IRRemote 库。

IRRemote 图书馆 - https://bit.ly/2EmZeZB

您可以下载该库并将其安装在 IDE 中。打开 IrrecvDemo 示例代码,并将代码上传到 arduino。打开串口监视器,开始逐个按下遥控器按钮。您将在串口监视器中看到相应的十六进制代码。我已将所有代码复制到一个 Word 文件中,以备将来参考。您也可以直接记下您打算在此项目中使用的按钮的十六进制代码。之后,就可以构建主程序了。


5

编写程序并将其上传到 Arduino

这是必须上传到 arduino 的最终代码 - https://bit.ly/2LfQ2YA

您需要了解的一点是,您需要具备一些关于 Arduino 定时器、中断和其他高级概念的基础知识,才能正确理解代码。我们通常不会在 Arduino 中使用定时器和中断,因为这会增加代码的复杂性。但这个项目需要使用中断和定时器。

此外,您还需要两个库来正确编译代码 -

  1. Timerone - https://bit.ly/2PE0ABe
  2. Pinchangeinterrupt - https://bit.ly/2ULS9aM

编译代码并将其上传至 Arduino。完成后,从 Arduino 中取出 IC。我们将把它放入 PCB 中。

6

焊接 PCB 上的元件

根据 BOM 和电路图,将元器件放置在 PCB 上并正确焊接。此步骤非常简单。7805 稳压器使用散热器,并在两者之间涂抹导热膏。完成此步骤后,请确保电源和地之间没有短路。

7

最终展示

焊接完成后,就该测试电路了。拿任何使用交流电的家用电器来说。我建议先用一盏简单的台灯进行测试。拧下开关上的电线,然后将其拧入 PCB 上任何继电器的常开和公共端。将台灯插入交流电源插座。使用 9-12V 直流电源为电路供电。

然后拿起遥控器,按下相应的按钮来打开灯。按照说明操作后,灯应该可以正常工作。同时检查定时器功能。

最终结果可以在视频中看到。

MP4
F42D8H2JPN3M7PQ.mp4
238.25MB
阅读记录0
点赞0
收藏0
禁止 本文未经作者允许授权,禁止转载
猜你喜欢
评论/提问(已发布 0 条)
评论 评论
收藏 收藏
分享 分享
pdf下载 下载
pdf下载 举报