ESP8266 WiFi

来自YFRobotwiki
跳转至: 导航搜索

ESP8266 WiFi 库


The WiFi class initializes the ethernet library and network settings.


- WiFi.mode()

设置wifi模块工作模式WIFI_AP,WIFI_STA,WIFI_AP_STA

ESP8266WiFi AP

- WiFi.softAP(ssid,[password],[channel],[ssid_hidden])

设置AP模式参数

参数

ssid:网络名称(最长63字符)
password:密码,至少8个字符,NULL为开放网络(可选参数)
channel:通道号,1 - 13(可选参数,缺省情况下为1)
ssid_hidden:网络是否可见,0为可见网络,1为隐藏网络(可选参数,缺省情况下为0)

返回值:bool

- WiFi.softAPConfig(local_ip,gateway,subnet)

配置AP

参数

local_ip:ap ip(类型:IPAddress-例192,168,0,1)
gateway:网关ip(类型:IPAddress)
subnet:子网掩码(类型:IPAddress)

返回值:bool

- WiFi.softAPdisconnect(wifioff)

断开网络,关闭AP

- WiFi.softAPgetStationNum()

获取AP模式下已连接终端的数量

- WiFi.softAPIP()

获取IP地址,用于AP模式

返回:IP地址

- WiFi.softAPmacAddress(mac)

获取MAC地址,用于AP模式

返回:uint8_t*

- WiFi.softAPmacAddress(void)

获取MAC地址,用于AP模式

返回:String


ESP8266WiFi STA

WL_CONNECTED

WL_NO_SSID_AVAIL

WL_CONNECT_FAILED

WL_IDLE_STATUS

WL_DISCONNECTED

- WiFi.begin()

开始wifi连接

- WiFi.config(local_ip, gateway, subnet, dns1, dns2)

更改IP配置设置禁用DHCP客户端

参数

local_ip Static ip configuration
gateway Static gateway configuration
subnet Static Subnet mask
dns1 Static DNS server 1
dns2 Static DNS server 2

返回:bool

- WiFi.reconnect()

将强制断开连接,然后重新连接到AP

返回:bool

- WiFi.disconnect(bool wifioff)

Disconnect from the network 断开网络

返回:bool

- WiFi.isConnected()

检查是否已连接

返回:bool

- WiFi.setAutoConnect(bool autoConnect)

设置是否复位自动连接,默认自动连接

返回:bool

- WiFi.getAutoConnect()

检查是否设置了复位自动连接

返回:bool

- WiFi.setAutoReconnect(bool autoReconnect)

设置当连接断开时是否重新连接

返回:bool

- WiFi.waitForConnectResult()

Wait for WiFi connection to reach a result returns the status reached or disconnect if STA is off

返回:连接状态

WL_CONNECTED
WL_NO_SSID_AVAIL
WL_CONNECT_FAILED
WL_IDLE_STATUS
WL_DISCONNECTED

- WiFi.localIP()

获取IP地址,用于STA模式

返回:IPAddress

- WiFi.macAddress(uint8_t* mac)

获取MAC地址,用于STA模式

返回:uint8_t*

- WiFi.macAddress(void)

获取MAC地址,用于STA模式

返回:String

- WiFi.subnetMask()

Get the interface subnet mask address. 获取接口子网掩码地址

返回:IPAddress

- WiFi.gatewayIP()

Get the gateway ip address. 获取网关地址

返回:IPAddress

- WiFi.dnsIP(uint8_t dns_no)

Get the DNS ip address. 获取DNS ip 地址

返回:IPAddress

- WiFi.hostname(void)

Get ESP8266 station DHCP hostname

获取ESP8266 SAT DHCP主机名

返回:String

- WiFi.hostname(char* aHostname)

Set ESP8266 station DHCP hostname 设置ESP8266 STA DHCP主机名

参数类型:char*

返回:bool

- WiFi.hostname(const char* aHostname)

Set ESP8266 station DHCP hostname

参数类型:const char*

返回:bool

- WiFi.hostname(String aHostname)

Set ESP8266 station DHCP hostname

参数类型:String

返回:bool

- WiFi.SSID()

获取当前连接网络的SSID

返回:String

- WiFi.psk()

获取当前连接网络的共享秘钥

返回:String

- WiFi.BSSID(void)

Return the current bssid / mac associated with the network if configured

返回:uint8_t*

- WiFi.BSSIDstr(void)

Return the current bssid / mac associated with the network if configured

返回:String

- WiFi.RSSI(void)

Return the current network RSSI.

返回:int32_t (RSSI value)

STA远程配置

- WiFi.beginWPSConfig(void)

WPS配置(so far only WPS_TYPE_PBC is supported (SDK 1.2.0))

返回:bool

- WiFi.beginSmartConfig()

开始 SmartConfig

返回:bool

- WiFi.stopSmartConfig()

停止 SmartConfig

返回:bool

- WiFi.smartConfigDone()

查询 SmartConfig 状态,决定何时停止配置

返回:bool



ESP8266WiFi Server

The Server class creates servers which can send data to and receive data from connected clients (programs running on other computers or devices).

- WiFiServer wifiServer(IPAddress addr, uint16_t port)

开启服务

参数

addr:ip地址
port:端口

- WiFiServer wifiServer(uint16_t port)

开启服务

参数

port:端口

- wifiServer.begin()

- wifiServer.setNoDelay(bool nodelay)

- wifiServer.getNoDelay()

- wifiServer.hasClient()

- wifiServer.available()

- wifiServer.status()

- wifiServer.close()

- wifiServer.stop()

- wifiServer.write(uint8_t b)

- wifiServer.write(const uint8_t *buffer, size_t size)



ESP8266WiFi Client

The client class creates clients that can connect to servers and send and receive data.

- WiFiClient wifiClient()

- WiFiClient wifiClient(const WiFiClient& other)

- WiFiClient operator=(const WiFiClient& other)

- wifiClient.connect(const char* host, uint16_t port)

- wifiClient.connect(IPAddress ip, uint16_t port)

- wifiClient.setNoDelay(bool nodelay)

- wifiClient.getNoDelay()

- wifiClient.write(uint8_t b)

- wifiClient.write(const uint8_t *buf, size_t size)

- wifiClient.write_P(PGM_P buf, size_t size)

- wifiClient.available()

- wifiClient.read()

- wifiClient.read(uint8_t* buf, size_t size)

- wifiClient.peekBytes(uint8_t *buffer, size_t length)

- wifiClient.flush()

- wifiClient.stop()

- wifiClient.connected()

- wifiClient.status()

- wifiClient.remoteIP()

- wifiClient.remotePort()

- wifiClient.localIP()

- wifiClient.localPort()

- wifiClient.stopAll()

- wifiClient.stopAllExcept(WiFiClient * exC)




ESP8266WiFi Udp

The UDP class enables UDP message to be sent and received.

- WiFiUDP wifiUDP(const WiFiUDP& other)

构造函数 -- 例如:WiFiUDP UDP;

- wifiUDP.begin(uint16_t port)

初始化、启动监听指定的端口 -- 例如:UDP.begin(5000);

成功返回1,否则返回0

- wifiUDP.beginMulticast(IPAddress interfaceAddr, IPAddress multicast, uint16_t port)

加入一个多路广播组并监听端口

- wifiUDP.available()

当前数据包中的数据字节数

- wifiUDP.stop()

结束UDP连接

- wifiUDP.beginPacket(const char *host, uint16_t port)

开始建立一个发送到特定主机和端口的远程主机的数据包

成功返回1,否则返回0

- wifiUDP.beginPacket(IPAddress ip, uint16_t port)

开始建立一个发送到特定IP和端口的远程主机的数据包

成功返回1,否则返回0

- wifiUDP.beginPacketMulticast(IPAddress multicastAddress, uint16_t port,IPAddress interfaceAddress, int ttl)

开始建立一个数据包发送到多播地址

成功返回1,否则返回0

- wifiUDP.endPacket()

完成数据包建立并发送

发送成功返回1,否则返回0

- wifiUDP.write(uint8_t byte)

写单字节到数据包

- wifiUDP.write(const uint8_t *buffer, size_t size)

写多字节到数据包

- wifiUDP.parsePacket()

开始处理下一个传入的可用数据包

返回数据包大小,如果没有数据包则返回0

- wifiUDP.read()

从当前数据包中读取单字节

- wifiUDP.read(unsigned char* buffer, size_t len)

从当前数据包中读取len长度字节并存储到buffer中

返回读取字节数,没有则返回0

- wifiUDP.peek()

从当前数据包中读取单字节,并不移动到下一个字节

- wifiUDP.flush()

读完当前数据包

- wifiUDP.remoteIP()

返回发送传入当前数据包的主机的IP地址

- wifiUDP.remotePort()

返回发送传入当前数据包的主机的端口号

- wifiUDP.destinationIP()

返回传入数据包的目的地址,区分多路广播和普通数据包有用

- wifiUDP.localPort()

返回输出数据包的本地端口

- wifiUDP.stopAll()

- wifiUDP.stopAllExcept(WiFiUDP * exC)





返回ESP8266 Libraries

返回首页

更多建议和问题欢迎反馈至 YFRobot论坛