最近把吃了一年灰的esp-12f找出来了,以前用esp-01s折腾了一个小东西,esp-12f买来一直都没用,因为家里人经常忘带钥匙,准备折腾一个远程开门的机关,所以翻出来试试。
首先焊板子折腾了两三个小时,先用了一个不经常的烙铁,翻来覆去总要出问题,后来拿出用惯了的烙铁分分钟解决问题。接下来就是刷micropython的固件又反复折腾了半天,在我准备放弃的时候,终于刷成功了。在网上不断的找教程,反正模块是用起来了,就差程序和电路了。顺便试了试MQTT服务器,方便、真方便。
Arduino买来吃灰都一年多了,这几天突然想折腾一下,就淘了两个Esp8266(01S和12F)准备和以前淘的DTH11模块整一个温度湿度记录系统。多种折腾,最终用Arduino nano + Esp8266-01s+DTH11实现,当然还有个黑群晖挂web服务器实现采集记录。
中间遇到两个问题:一是arduino和esp8266通过串口发指令的时候,要做字符串比较,因为写代码比较随意,导致比较不成功,最终结果是没用Sting.trim()的原因。因为串口发送数据print()和println()都在混用,收到的字符会在尾部多结束符合,可用trim()去掉。
二是dth11接在arduino上,esp8266上跑一个webserver,需要获取数据时esp8266发指令到arduino,arduino发回数据,问题是获取数据不同步,每次都需要二次刷新网页才能取得数据。因为arduino需要定期获取dth11的数据缓存,就直接改为发送到esp8266上缓存。串口收发数据是异步的,而且arduino是单线程,应该不会出问题。另外arduino和esp8266必须共地,不然串口乱码。