7、nodeMCU學習筆記--wifi模組·中
閒言碎語
上一篇水文中簡單的介紹了wifi模組中的幾個配置相關的函式。這篇文章準備介紹station模式下相關的函式。station模式下,nodemcu可以連線入wifi網路,成為一個區域網裝置。
模組函式
station部分的函式,數量也超過了10個。雖然看起來很多,但是關鍵也就那麼幾個函式。
序號 | 函式名 | 引數 | 返回值 |
---|---|---|---|
1 | wifi.sta.autoconnect() | 0 / 1 | nil |
2 | wifi.sta.config() | ssid, password[, auto[, bssid] | nil |
3 | wifi.sta.connect() | 空 | nil |
4 | wifi.sta.disconnect() | 空 | nil |
5 | wifi.sta.eventMonReg() | wifi_status[, function([previous_state])] | nil |
6 | wifi.sta.eventMonStart() | [ms] | nil |
7 | wifi.sta.eventMonStop() | [unregister_all] | nil |
8 | wifi.sta.getap() | [[cfg], format,] callback(table) | nil |
9 | wifi.sta.getbroadcast() | nil | 字串 |
10 | wifi.sta.getconfig() | nil | ssid, password, bssid_set, bssid |
11 | wifi.sta.gethostname() | nil | 字串 |
12 | wifi.sta.getip() | nil | 字串 |
13 | wifi.sta.getmac() | nil | 字串 |
13 | wifi.sta.getrssi() | nil | 字串 |
14 | wifi.sta.sethostname() | 字串 | true / false |
15 | wifi.sta.setip() | table | true / false |
16 | wifi.sta.setmac() | 字串 | true / false |
17 | wifi.sta.status() | nil | 0~5 |
- .sta.autoconnect用於設定是否自動連線;
- .sta.config用來設定接入路由的資訊,該資訊只有被修改才會變動,掉電資訊依然在。auto引數預設為1,即自動連線。當週圍有其他同名ssid時,可以通過bssid引數指定接入某mac地址路由。
wifi.sta.config("ssid", "password")
- .sta.connect和.sta.disconnect用於接入或者斷開連線。當在.sta.config設定了手動連線時,才需要使用.sta.connect;
- .sta.eventMonReg用於註冊狀態監聽。總共有6種狀態;
wifi.sta.eventMonReg(wifi.STA_IDLE, function()
end)
wifi.sta.eventMonReg(wifi.STA_IDLE) --登出回撥
- .sta.eventMonStart用於啟動狀態監聽,可選引數是回撥時間間隔,預設150ms;
- .sta.eventMonStop用於暫停狀態監聽,如果可選引數傳入1,則暫停並登出回撥;
- .sta.getap用於掃描ap列表。引數cfg是lua的table資料型別,引數format用於選擇table的格式,callback(table)是回撥函式。
- .sta.getbroadcast用於獲取廣播地址;
- .sta.getconfig用於獲取配置資訊;
- .sta.gethostname用於獲取主機名
- .sta.getip用於獲取ip地址、掩碼、閘道器;
- .sta.getmac用於獲取mac地址;
- .sta.getrssi用於獲取連線點的rssi。如果未接入網路則返回nil;
- .sta.sethostname用於設定主機名,只能包含數字、字母、-,且不能超過32字元,第一個和最後一個不能是下劃線;
- .sta.setip用於設定ip地址、掩碼、閘道器;
- .sta.setmac用於設定mac地址;
- .sta.status用於獲取狀態。
綜合小例子
nodeMCU提供的API還是蠻簡潔的,幾句話就可以實現wifi上網。這裡先使用.sta.sethostname設定nodeMCU模組的名字,方便與其他裝置區分(比如,手機)。註冊一個狀態(wifi.STA_GOTIP)監聽,當連入wifi的時候會觸發回撥。最後使用.sta.config接入網路,相當於平時用手機輸入ssid和密碼。為了方便,我用筆記本共享wifi來給nodeMCU接入。
wifi.sta.sethostname("Node-MCU")
print(wifi.sta.gethostname())
function printap(ap)
for k, v in pairs(ap) do
print(k.." : "..v)
end
end
wifi.sta.eventMonReg(wifi.STA_GOTIP, function()
print(wifi.sta.getip())
wifi.sta.getrssi()
wifi.sta.getap(printap)
end)
wifi.sta.eventMonStart()
wifi.sta.config("wifitest", "kwmb566687")
簡書評論不能貼圖, 如有需要可以到我的GitHub上提issues
相關文章
- 【Go學習筆記7】go語言中的模組(包)Go筆記
- YYKit(Base模組)學習筆記筆記
- CCNA學習筆記7筆記
- perl學習筆記(7)筆記
- drupal7學習筆記—–(持續更新中…)筆記
- Nginx 學習筆記--程式與模組Nginx筆記
- Android學習筆記(7)Android筆記
- wp7學習筆記筆記
- Nginx 學習筆記--程式與模組(二)Nginx筆記
- Nginxhttp模組(學習筆記二十一)NginxHTTP筆記
- angular學習筆記(二)-建立angular模組Angular筆記
- G01學習筆記-7筆記
- Tensorflow學習筆記No.7筆記
- SpringCloud學習筆記(7)——SleuthSpringGCCloud筆記
- 學習筆記----圖論學習中筆記圖論
- nodeMCU wifi透傳到串列埠 支援hexWiFi串列埠
- node學習筆記第八節:模組化筆記
- Erlang學習筆記(四)模組與函式筆記函式
- Nginxupload上傳模組(學習筆記十七)Nginx筆記
- 兒童教育講座 - 學習筆記 7筆記
- oracle 學習筆記---效能優化(7)Oracle筆記優化
- DG學習筆記(7)_保護模式筆記模式
- MYSQL學習筆記7: 聚合函式MySql筆記函式
- android學習筆記--檢測是否為wifi環境Android筆記WiFi
- Node中Buffer學習筆記筆記
- 中斷的學習筆記筆記
- Python學習筆記_函式_匯入模組Python筆記函式
- JDK 新特性學習筆記之模組系統JDK筆記
- 學習網路取證 (Network Forensics) - WiFi分析筆記WiFi筆記
- openwifi學習-日程記錄(全)WiFi
- numpy的學習筆記\pandas學習筆記筆記
- 學習筆記:深度學習中的正則化筆記深度學習
- <node.js學習筆記(4)>stream和http模組Node.js筆記HTTP
- Essential_SQLAlchemy2th學習筆記之Core模組SQL筆記
- EBS R12.1.3 學習筆記 - EBS Product (模組)筆記
- Python3學習筆記4 , 迴圈、模組Python筆記
- 學習筆記:12864液晶模組的詳細使用筆記
- 學習筆記(二十三):ArkTS語言-模組筆記