醬是創客的ESP32教學主題第四篇,以Ai-Thinker安信可NodeMCU-32S(使用Arduino語言)來實作教學,本篇教學將著重於設定開發板為軟體模擬無線基地台Soft AP模式,並可讓手機/電腦連線,為何要設定成soft AP模式? 因為你要讓用戶自行連線到開發板設定無線網路的SSID和密碼。我們總不能為一個開發板專案設定一個固定SSID和密碼,然後跟用戶說你的SSID/password一定要和我的一樣才能連線。
以下是我們今天的目標
- 開發板使用soft AP模式並提供DHCP IP給client
- SSID為iot
- 無線網路密碼: chosemaker
- 無線網路頻道: 6
- AP的IP/Subnet Mask/Gateway: 192.168.100.1/255.255.255.0/192.168.100.1
Arduino 範例程式碼如下
//醬是創客 開發實作的好夥伴 #include "WiFi.h" const char* ssid = "iot"; const char* passphrase = "chosemaker"; IPAddress local_ip(192,168,100,1); IPAddress gateway(192,168,100,1); IPAddress subnet(255,255,255,0); void setup() { Serial.begin(115200); setupAP(); } void loop() { } void setupAP(void) { WiFi.softAP(ssid, passphrase, 6); WiFi.softAPConfig(local_ip, gateway, subnet); Serial.println("run softap"); }
這時候我們用手機或電腦透過wi-fi連至iot並輸入密碼chosemaker,這時候我們可以拿到192.168.100.2的IP
Arduino 序列埠監控視窗 輸出如下
run softap dhcps: send_nak>>udp_sendto result 0 dhcps: send_offer>>udp_sendto result 0