本文主要是介绍红外遥控风扇改手机APP远程控制杂记,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
前记
最近老是找不到风扇遥控,搞得想整个手机APP远程控制风扇。说搞就搞,远程控制流程稍微一思考就定下来了。首先是信号转发设备通过WiFi模块连接服务器端,手机端再通过APP向服务器端发送控制指令,服务器端将控制指令下发到信号转发设备上,信号转发设备将控制指令翻译成红外信号发送给红外设备。制作这样一个产品需要几个技术栈:
- 服务端程序开发
- APP端/Web端应用开发
- 硬件相关知识及嵌入式开发
作为一个互联网民工,前两样技能都不是问题。唯独第三样技能接触得比较少。最终虽然把产品做出来了,但是对硬件和嵌入式开发的理解还只是半知半解。此文会重点记录开发过程中碰到的硬件和嵌入式开发的相关知识,权当是给自己做个笔记吧。
硬件选型
产品涉及到的硬件有WiFi模块和红外收发模块及MCU。WiFi模块功能就不用说了,红外接收功能用于解码遥控的信号,MCU用于接收WiFi信号并翻译控制红外发射器发送信号。
咨询做硬件的朋友后经过一番搜索筛选,最终选用ESP8266模块。ESP8266既有WiFi功能且有MCU可以烧写程序,这样一来就可以不用单独买一个MCU模块了。最终在某宝买了个带NodeMCU开发板很红外收发器的ESP8285模块(8285和8266的主要区别是flash大了1mb)。买到的模块是这样的:
USB转TTL模块
USB转TTL基本是嵌入式开发必备的,用来烧写或者调试嵌入式程序经常需要用到。具体功能我也不太懂,大概就是将USB接口转为类似RS232的串口信号。
TTL接口和ESP8266的接线如下:
5v – 5v
rx – tx
tx – rx
GND – GND
开发调试
驱动
ESP8266和USB转TTL模块接好线之后插上电脑,需要安装驱动才能识别,驱动下载链接:https://sparks.gogo.co.nz/ch340.html。
调试工具
驱动安装好之后,下载一个串口调试软件,配置参数如下,然后打开串口。ESP8266自带的固件支持AT命令,支持的所有AT命令可以参考官方PDF文档。这里我们只需要用到AT+RST命令来测试我们前面的步骤是否都成功了。输入AT+RST命令之后,ESP8266会重启并且输出一系列信息,如果能在调试工具上看到串口输出的信息,就证明我们前面的操作都成功了。
引脚电平
这里需要注意的是ESP8266的IO0引脚。IO0引脚在短接GND的情况下是烧写模式,这个模式下进行调试是不会有任何反应的,需要去掉短接才能进行调试。
波特率
不管是ESP8266还是ESP8285,串口波特率都是115200,不用尝试其他的值。由于前期我没有足够的经验和知识,在调试这个步骤尝试换波特率进行连接,浪费了不少时间。
烧写固件
这篇关于红外遥控风扇改手机APP远程控制杂记的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!