仔细分析上图,根据功能区分,可以分为:
- Arduino功能,把ESP8266 当做 Arduino来使用
- SD —— SD卡库
- Servo —— 伺服电机库
- Wire —— I2C库
- SPI —— spi库
- EEPROM —— eeprom库
WiFi功能,其中又可以分为网络服务功能以及无线更新ESP8266功能。提供了使用TCP和UDP通过WiFi进行通信的库等等。
ESP8266WiFi —— wifi基础功能
ESP8266HTTPClient —— http客户端功能
ESP8266WiFiMulti —— ESP8266WiFi多连接功能
ESP8266WebServer —— 局域网web服务器功能
WiFiUdp —— UDP服务
ESP8266mDNS —— 局域网本地发现功能
DNSServer —— 真正的DNS域名服务
ArduinoOTA —— OTA无线更新
STA模式有几个特点:------我想连上谁
在连接丢失的情况下,一旦WiFi再次可用,ESP8266将自动重新连接到最近使用的接入点
模块重启也会发生同样的情况,因为ESP8266将最后使用的接入点认证信息(ssid账号,psw密码)保存到Flash(非易失性)存储器中
如果在Arduino IDE修改代码,但代码不更改Wi-Fi工作模式或接入点认证信息(ssid账号,psw密码),则ESP8266使用保存在Flash上数据来重新连接
AP模式—— 谁想连上我
AP(Access Point)模式可以理解为Station模式的相反面,用于将ESP8266模块作为接入点建立Wi-Fi网络,供其他Station模式的模块连接进来
AP模式可以用于Station模式的模块之间交互的中转站(让所有模块处于同一个WiFi网络中);
在将ESP8266模块(Station模式)连接到wifi之前,一般我们是不知道当前wifi网络的ssid账号和psw密码,那么我们怎么
告诉ESP8266呢? 在AP模式下,我们可以使用手机或者笔记本连接到它,然后我们就可以给ESP8266模块发送连接网络的ssid和psw。一旦完成,ESP8266自动切换到Station 模式,就可以连接到目标wifi接入点
模式设置语法:
WiFi.mode(WIFI_AP); //设置WIFI模式为AP模式
模块关系图:
天子骄龙