关闭

ESP8266开发中的流水账

标签: ESP8266
423人阅读 评论(1) 收藏 举报
分类:

ESP8266开发中的流水账

1、开发环境

Windows下推荐使用AI-Thinker打包的Eclipse开发环境,直接下载后几本不用配置就可以使用了。同时,一旦ESPRESSIF有了新的SDK,更新项目到新SDK也很方便。
使用时,需要:
(1)、在SDK文件夹中建立app目录
(2)、把 examples/IoT_Demo下的所有内容复制到app目录下
(3)、将driver_lib下的文件复制到app目录下(这一步不一定要做,视app目录下是否有驱动决定)
(4)、删除SDK目录下的driver_lib目录【注意:如果不删除,则会导致编译时出错】

2、省电模式

SDK中默认开启省电模式,默认的模式为modem-sleep模式。如果不关闭该模式,则有可能导致ESP8266无法接收来自服务器的数据(例如,不能接收广播消息、丢包率飙升等)。但该省电模式不影响ESP8266发送数据。可使用wifi_set_sleep_type(sleep_type)关闭省电模式。sleep_type定义如下:

enum sleep_type {
NONE_SLEEP_T = 0;
LIGHT_SLEEP_T,
MODEM_SLEEP_T
};

3、莫名其妙的重启

有时候会出现一些莫名其妙的重启现象,且很难定位到错误发生的位置。通过查看ESP8266自己输出的LOG可以看到,多数情况下都是看门狗引起的复位。所以,在某个项目中,采用了关闭软件看门狗,启动一个定时器手动喂狗的方式解决了这个问题。

4、有关GPIO的中断

ESP8266的GPIO中断与AVR或51之类的不同,无论哪个GPIO中断都会进入相同的ISR,然后需要由用户自己在ISR中读取相应的寄存器判断到底是哪个脚中断了。

5、关于烧写固件

固件的烧写地址如下所示。
尤其注意,对于不同容量的 FLASH ,esp_init_data_default.bin 和 blank.bin 烧写的地址不同!!!
这里写图片描述
这里写图片描述
注意:每次升级SDK或创建新项目后,应当先检查makefile是否正确配置了所选的FLASH大小等参数。

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:3105次
    • 积分:54
    • 等级:
    • 排名:千里之外
    • 原创:2篇
    • 转载:1篇
    • 译文:0篇
    • 评论:2条
    文章存档
    最新评论