ESP8266既可以作為一個(gè)無(wú)線(xiàn)終端(STA模式),像手機(jī)一樣連接路由器,也可以作為熱點(diǎn)(AP模式),像路由器一樣讓手機(jī)、電腦來(lái)連接。本篇介紹ESP8266作為無(wú)線(xiàn)終端連接網(wǎng)絡(luò)。
1. 連接網(wǎng)絡(luò)
打開(kāi)Arduino IDE,新建sketch,拷貝如下代碼并保存。
/*
* connect01
* ESP8266連接網(wǎng)絡(luò)
*/
#include
const char* ssid = "your-ssid";//連接WIFI名(SSID)
const char* password = "your-password";//WIFI密碼
void setup()
{
Serial.begin(115200);
Serial.println();
Serial.println("--------------");
WiFi.begin(ssid,password);//啟動(dòng)網(wǎng)絡(luò)連接
Serial.printf("Begin to Connect %s\\r\\n", ssid);
while (WiFi.status() != WL_CONNECTED)//檢測(cè)網(wǎng)絡(luò)是否連接成功
{
delay(500);
Serial.print(".");
}
Serial.println();
Serial.print("Connected, IP address: ");
Serial.println(WiFi.localIP());//返回ESP8266的IP地址
}
void loop() {}
電腦連接開(kāi)發(fā)板,在工具—開(kāi)發(fā)板—端口中選擇正確的端口號(hào),點(diǎn)擊上傳,程序編譯并上傳。
程序下載
上傳完成后打開(kāi)串口監(jiān)視器,波特率設(shè)置115200,可以看到串口打印聯(lián)網(wǎng)信息如下:
打印信息
當(dāng)成功連接網(wǎng)絡(luò)后,ESP8266將獲取到IP地址,在同一局域網(wǎng)下的電腦端,打開(kāi)命令提示符,通過(guò)ping命令測(cè)試通訊正常。
網(wǎng)絡(luò)測(cè)試
2. 掃描多個(gè)熱點(diǎn)連接
在ESP8266WiFiMulti庫(kù)中,為我們提供了往ESP8266添加多個(gè)熱點(diǎn)存儲(chǔ)功能,ESP8266會(huì)在添加的多個(gè)熱點(diǎn)中,自動(dòng)搜索信號(hào)最強(qiáng)的那個(gè)連接,當(dāng)開(kāi)發(fā)板需要在多個(gè)地方使用時(shí),可以非常方便的自動(dòng)連接當(dāng)前環(huán)境的熱點(diǎn)。
/*
* connect02
* ESP8266在多個(gè)熱點(diǎn)中尋找信號(hào)最強(qiáng)的進(jìn)行連接
*/
#include
#include
ESP8266WiFiMulti wifis;//建立ESP8266WiFiMulti對(duì)象
void setup()
{
Serial.begin(115200);
Serial.println();
Serial.println("--------------");
//添加多個(gè)熱點(diǎn)信息
wifis.addAP("TonyCode", "12345678");
wifis.addAP("TonyCode1","12123455");
wifis.addAP("TonyCode2","88888888");
wifis.addAP("TonyCode3","66666666");
Serial.println("Begin to Connect");
while (wifis.run() != WL_CONNECTED)//檢測(cè)網(wǎng)絡(luò)是否連接成功
{
delay(500);
Serial.print(".");
}
Serial.println();
Serial.printf("Connected %s, IP address: ", WiFi.SSID());
Serial.println(WiFi.localIP());//返回ESP8266的IP地址
}
void loop() {}
通過(guò)addAP()函數(shù),添加需要存儲(chǔ)的熱點(diǎn)SSID和密碼,run()函數(shù)在當(dāng)前環(huán)境中搜索存儲(chǔ)的熱點(diǎn),尋找信號(hào)最強(qiáng)的進(jìn)行連接。
-
路由器
+關(guān)注
關(guān)注
22文章
3683瀏覽量
113290 -
無(wú)線(xiàn)終端
+關(guān)注
關(guān)注
0文章
30瀏覽量
13859 -
開(kāi)發(fā)板
+關(guān)注
關(guān)注
25文章
4840瀏覽量
96867 -
Arduino
+關(guān)注
關(guān)注
187文章
6455瀏覽量
186363 -
ESP8266
+關(guān)注
關(guān)注
50文章
962瀏覽量
44694
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論