一、 相關知識與基本概念
三、 存取點(AP)模式內建網路伺服器(WebServer)設計-GET請求的解析
四、 存取點(AP)模式輸出控制及應用
一、 相關知識與基本概念
ESP32是一顆同時具備無線WiFi與低功率藍牙功能的單晶片微電腦,而在其無線WiFi的功能中又同時具備了站點(Station)與存取點(AP:Access Point,又常稱為熱點:Hot Spot)兩種角色的功能,而這兩種角色功能可獨立使用,亦可同時合併使用。在許多的應用場合,例如使用行動通訊裝置(手機或平板電腦)對單一的裝置進行近距離的無線遙控或是感測器資料讀取等,由於不須要連接到網際網路(Internet),因此可以工作在一對一或多對一的單機模式底下。
圖一、1 ESP32無線WiFi網路單機存取點(AP)模式架構示意圖
(本圖與下圖轉載自「https://randomnerdtutorials.com」網站僅此致謝)
圖一、2 ESP32無線WiFi網路單機存取點(AP)與站點結構示意圖
在ESP32中的單機模式便是所謂的軟體存取點(softAP)模式(如上圖所示),在此模式之下,ESP32成為一個可供其他無線WiFi裝置連接的存取點(AP點),而且內建一伺服器(Server)功能,如果不特地去更改的話,此伺服器的預設IP位址為:[192.168.4.1],其他周邊用來控制或存取ESP32這個存取點伺服器的無線裝置稱為站點(Station);在本章中會依序介紹ESP32存取點(AP)模式,也就是一般的網路伺服器(Server)使用方法,與相關的內建函式功能。不管是工作在站點或是存取點模式,ESP32都可以執行網路通訊中的客戶(client)端或是伺服器(server)的腳色,不過由於在單機(Stand Alone)模式底下基本上主要以伺服器(server)的腳色為主,而這也是本章的重點!等到後面的網際網路(Internet)篇單元時,本章所介紹的與伺服器(server)有關的功能都可以直接轉換使用,不必再大幅修改。
在前一代的ESP8266系列中,如果要在Arduino IDE中開發程式的話,一定會使用到由 Ivan Grokhotkov這位先生所開發設計使用於Arduino IDE中聖經級的函數庫:《ESP8266WiFi.h》,但是到了ESP32之後,則是由原廠也就是上海樂鑫訊息科技直接提供了(在此為”WiFi.h”),不過基本上這些設定指令和前一代的ESP8266系列幾乎是完全一樣,以下就是這些無線WiFi的基本相關指令:
WiFi模式(Mode)設定
WiFi.mode(m):WiFi工作模式初始化設定,其中的模式參數’m’共有”WIFI_AP”(1)、”WIFI_STA”(2)、”WIFI_AP_STA”(3)與”WIFI_OFF”(4)四種選項。
WiFi.getMode():傳回目前ESP32設定的WiFi工作模式,但是傳回的結果是上面四種參數’m’後面括弧中的數字值。
網路設定(Set up Network)
i. WiFi.softAP(SSID,Password):軟體AP存取點初始化設定。
ii. WiFi.softAPConfig:軟體AP存取點伺服器固定IP位址設定。
2、網路管理(Manage Network)
i. WiFi.softAPdisconnect:中斷所有裝置與軟體存取點連線。
ii. WiFi.softAPgetStationNum:取得所有與軟體存取點連線的裝置數目。
3、網路配置(Network Configuration)
i. WiFi.softAPIP:取得軟體存取點的伺服器IP位址。
ii. WiFi.softAPmacAddress:取得軟體存取點的MAC IP位址。
後面我們就會以相關的範例來說明這些函式或指令的詳細功能與使用方法。
沒有留言:
張貼留言