ESP8266 ESP-12S模块调试记录

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/shjhuang/article/details/80519805

近期开发一个产品,成本、功耗的缘故,需要在ESP8266上开发程序,经历一下过程,作为记录,以免再走重复的弯路。

1. 硬件准备:购买USB转TTL模块。一开始想把开发需要的材料做得简单点,就定下了USB转TTL + ESP-12S 共2个开发模块的方案,希望通过USB-TTL模块直接给ESP-12S供电,结果发现ESP-12S电流较大,或者USB-TTL模块的问题,一旦接入ESP12S就会导致USB模块不断的重新加载驱动,无法使用。最后只能通过外部的电源给ESP-12S供电,才得以解决。

2. 硬件功能确认:参考http://wiki.ai-thinker.com/esp_download,对模块进行了编程,下载了IOT的BIN文件,串口成功收到相应的提示信息,硬件功能确认OK,下载功能确认OK。

3. 准备编写自己的代码:下载esp8266_nonos_sdk_v1.5.4.7z,编译通过,下载程序时提示错误。

卡在这里没法往下搞了。

搞了半天,重启烧录软件,不再提示这个问题。坑

烧录成功了,串口接收到1串乱码,又卡住了。

于是又回去看了说明书,说是上电的时候波特率是74880bps,有点奇葩了。于是用安信可串口调试软件接上来一看。

OK

4. 按照sdk api说明,完成udp client的通信。

5. 完成COAP协议的添加,成功发送数据到服务器。

6. 增加读取SSID、IP地址、CHIP ID、RSSI,成功。

7. 增加温湿度传感器SHT20,成功。

8. 增加ADC读取电池电压,成功,但是电压不准,应该是电阻的精度不够,等合适电阻回来之后重新调试,或校准。

9. 原本温湿度IO为GPIO2和GPIO14,变更为GPIO4和GPIO5之后,老是重启,但是把温湿度停止后还是重启,不知道为啥,明天继续调试。[问题已经找到:LDO电源IC的输出电压为3.0V,处于临界点,且LDO输出没有大电容,电压不稳定导致复位]

10. 将温湿度IO移动到IO4和IO5,软件配置这两个GPIO为上拉时,不停的复位,没找到问题。只能外加上拉电阻了。

11. 完成休眠功能。

12. 完成按键唤醒,实际上就是按下复位系统。

12.  低功耗测试,待机电流为20uA,勉强满足项目需求,电池gong供电可以维持1-2个月

遗漏问题:

1. os_sprintf()函数无法进行浮点数格式转换,目前自己写了个函数先用着。

以上,完成了ESP8266的调试工作。

猜你喜欢

转载自blog.csdn.net/shjhuang/article/details/80519805