在网络篇①中,博主主要讲解了Arduino上开发ESP8266的插件库 Arduino Core For ESP8266。可是,并无讲到关于这个模块的工做模式,因此本篇讲着重讲解ESP8266的三种工做模式:web
重点来了,8266编程开发,都是基于以上三种模式中的一种模式来进行开发。因此,开发ESP8266的时候,须要首先肯定工做模式。编程
Station(STA)模式用于将ESP8266模块链接到由接入点(Access Point,理解为热点)创建的Wi-Fi网络。请查看下图:
Station模式有几个特色,以方便管理的Wi-Fi链接。安全
AP(Access Point)模式能够理解为Station模式的相反面,用于将ESP8266模块做为接入点创建Wi-Fi网络,供其余Station模式的模块链接进来。请查看下图:网络
该模式是以上两种模式的整合。请查看下图:
webstorm
紧紧记住,WiFi有三种工做模式:Station模式、AP模式、AP兼Station模式,这样就足够了。每一个ESP8266模块确定工做于这三种模式之一,固然除非你没用WIFI功能,把它当作arduino开发版用。tcp
前面咱们整体上介绍了ESP8266工做模式,同时咱们也了解到 Arduino IDE上主要经过 Arduino Core For ESP8266这个核心库来开发ESP8266功能,而且也谈论到这个核心库其实包含了众多小核心库,包括ESP8266WiFi、ESP8266WebServer、ESP8266HTTPClient、ESP8266mDNS等等。虽然咱们实际开发中并不会说所有库都会使用起来,可是至少须要造成一个意识,那就是:Arduino core for ESP8266库,在8266 sdk基础上给咱们提供了不少操做方式。
其中,博主以为最核心最重要的一个库就是ESP8266WiFi(后面咱们代码中你会常常看到 #inclue<ESP8266WiFi.h>,那时你就应该知道这个库具体是用来作什么的)函数
若是你是按照博主以前说的方式去clone Arduino core for 8266的代码的话,而后把libraries目录导入到源码查看IDE(这里我推荐你们安装webstorm)的话,而后打开ESP8266WiFi那个目录,你就会发现以下代码结构:ui
没错,你会发现不少成双成对的h头文件和cpp源文件,有点组cp的感受。
插件
众多文件,先不要纠结。
在这里,博主能够先告诉你几个知识点:3d
记住这11点,基本上整个ESP8266WiFi库你就了解一半了,剩下就是看各个具体使用(引入使用一步到位 #include<ESP8266WiFi.h>,固然你也能够一个个include,so easy)。
#include<ESP8266WiFi.h>
在这里,博主给读者讲解用得最多的两个文件,请看下图:
能够看到ESP8266WiFi类,继承了ESP8266WiFiGeneric、ESP8266WiFiSTA、ESP8266WiFiScan、ESP8266WiFiAP,同时引入了WiFiClient、WiFiServer、WiFiServerSecure、WiFiClientSecure等等,所谓集合了诸子百家的功能于一身。
为了让你们更加清晰了解到各个具体内容,博主也花了点时间作了一个初略的百度脑图,以供你们参考:
脑图相对来讲比较大,烦请读者自行下载保存下来放大查看。本篇不详细介绍每一个函数怎么用,等到后面用到的时候,博主再陆续给你们介绍一下用法。
这节要记住的重点是,核心库ESP8266WiFi到底有什么功能能够提供给咱们使用。理解它是后续开发的基本。