学生党一个,技术和经验都不到家,过程中遇到很多的问题,花了许久时间才做完了这个东西,在这里把自己的经验分享出来,水平比较低,不喜勿喷,希望在这里我能多学到点东西。
照片不知道为什么传不上来,打包在最后了。
步骤:
1.arduino获取空调红外编码
2.ESP8266烧写固件(这里
固件下载,选
GAgent for ESP8266 XXXXXX就行了)
3.按照机智云官方文档的步骤创建项目
4.自动生成单片机代码,选ArduinoUNOR3,单片机代码当时我参考网上的arduino教程修改感觉挺麻烦,,所以单片机代码是我自己完善的,比较精简,需要的可以看看。(其中的DHT11模块没有使用库,参照谁的代码直接写进去的,不过忘记谁了,,太久了)。
5.连接测试
1.空调红外基本是找不到官方资料的,所以我们只能自己分析,这玩意折腾我好久最终还是选择了直接用IRremote库解决,源码最后我会附上(
注意新版本的库不再是修改IRremote.h,而是修改IRremoteInt.h,修改这后面的数字就可以解决长度不够的问题#define RAWBUF 101)但是缺点也很明显,由于只能发送raw格式编码,占用RAM太高了,我用的arduino pro mini(只要芯片是ATMEGA328P就可以,哪个板子无所谓,自己焊一个更好,但是尽量不要用UNO,
这里分享一个我的经验,起码我用UNO连接UNO总是掉线,最后连接电脑进行长时间测试发现,可能是山寨UNO自带CH340G或者CP1202等等串口转换芯片,导致TX RX引脚有时和ESP芯片不能正常通信,个人遇到的,不知道是不是个例),致使我无论怎么不再是修改精简,2K的RAM都是不够用的,无奈只好用了pro mini加焊一块ATMEGA328P解决,有时间的话试试能不能用STM32替换,这玩意20K RAM怎么折腾都够了。
2.说实话ESP8266真的是让我头疼了好久,起码各种掉线,各种修改连线和代码都没有彻底解决,只是使在线时间长了点,最后无意逛油管看到有人说
ESP8266对供电要求比较高,一定要用稳定点的电源,另外注意是3.3V。最后我修改了电路,加了AMS117-3.3芯片,更换更稳定的电源后完美解决。
3.由于用了两片单片机,互相之间的需要通信,起初我是用主单片机虚拟出来一个串口与下位机通信,但是效果不好,由于虚拟串口通信时单片机不能干其他的,导致有时半天进串口出不来。无奈暂时使用两个引脚发送高低电平通知下位机要进行的操作。
4.个人经验,使用模块时千万不要忽略供电问题!真的让我头疼了许久才注意到这里,设计电路尽量精简,不是必要的尽量去除,就像我的UNO串口芯片导致的问题也让我摸索了几天。挺晚了,,睡觉更改为百度云链接链接: https://pan.baidu.com/s/153Jrn9OG0gKj4vRKCfxk1Q 密码: dam7[ 此帖被dear521520在2018-07-26 16:11重新编辑 ]