arduino ide 开发esp8266注意事项

1.引脚序列号必须是常量来定义,否则会无限重启。

复制代码
#define p2  2
const int Pin2=p2;
pinMode(Pin2, OUTPUT);

2.关于wifi的模式,ap,sta,ap+sta三种模式的初始化必须放在void set_up(){}这个函数里,不能额外搞个自定义函数,不然会无限重启。

错误初始化:

复制代码
const char *ssid="esp8266ap";
const char *pwd="12345678";
void init_wifi(void){
WiFi.softAP(ssid,pwd);
}
void set_up(void){
Serial.begin(115200);
init_wifi();
}

正确的初始化:

const char *ssid="esp8266ap";

const char *pwd="12345678";

void set_up(void){

Serial.begin(115200);

WiFi.softAP(ssid,pwd);

}

3.wifi 的密码长度要么没有,要么有,有就必须8个字符以上,不然无限重启,程序崩溃复位。

4.esp8266的eeprom库是在flash的最后开辟一个空间,必须这样写,不然也可能发生崩溃重启。

复制代码
#include <EEPROM.H>

char arr=0;
void set_up(void){
//write
     EEPROM.begin(sizeof(arr));
     EEPROM.write(0,arr);
     EEPROM.commit();
     EEPROM.end();
//read
     EEPROM.begin(sizeof(arr));
     arr=EEPROM.read(0);
     EEPROM.commit();
     EEPROM.end();
}
//根据eeprom的大小0~4k,最好不要超过4k,超过4k建议使用文件存储
//esp-01s没有eeprom,所以不支持

5.ap模式与sta模式最好不要混用,因为混用容易使得信道混乱。

相关推荐
Brilliantwxx1 天前
【C++】 继承与多态(中)
开发语言·c++·笔记·算法
Aurorar0rua1 天前
CS50 x 2024 Notes C -14
c语言·开发语言·学习方法
小短腿的代码世界1 天前
从.qrc到rcc编译器:Qt资源系统的隐秘运作机制与大型项目性能突围
开发语言·qt
2401_833269301 天前
Java网络编程入门
java·开发语言
青瓦梦滋1 天前
C++的IO流与STL的空间配置器
开发语言·c++
五月君_1 天前
Bun v1.3.14 发布,Rust 版即将进 Claude Code 内测,下一版可能就告别 Zig
开发语言·后端·rust
鱼很腾apoc1 天前
【学习篇】第20期 超详解 C++ 多态:从语法规则到底层原理
java·c语言·开发语言·c++·学习·算法·青少年编程
不吃土豆的马铃薯1 天前
4.SGI STL 二级空间配置器 allocate 与_S_refill 源码解析
c语言·开发语言·c++·dreamweaver·内存池
码界筑梦坊1 天前
120-基于Python的食品营养特征数据可视化分析系统
开发语言·python·信息可视化·数据分析·毕业设计·echarts·fastapi
lsx2024061 天前
《Foundation 模态框》
开发语言