99久久全国免费观看_国产一区二区三区四区五区VM_久久www人成免费看片中文_国产高清在线a视频大全_深夜福利www_日韩一级成人av

嵌入式設備配網:從基礎到實戰!

當下,很多嵌入式設備都需要通過配網來與網絡連接,從而實現遠程控制、數據傳輸等功能。

下面,我們就來深入了解一下嵌入式設備配網的相關知識。

一、熱門配網方案解析

配網方式有多種,常見的有:

1、smartconfig

smartconfig配網的原理是利用手機等終端設備將網絡信息(SSID 和密碼等信息)通過廣播的方式發送出去,嵌入式設備通過監聽周圍的無線信號,解析出網絡信息,從而實現配網。

smartconfig配網設備創建熱點,設備直接從周圍的無線環境中獲取網絡信息,操作更加簡便。

  • 優點:操作簡單,用戶體驗好;適用于各種復雜的網絡環境。
  • 缺點:對設備的無線接收能力要求較高,可能存在信息解析失敗的情況。
  • 適用場景:廣泛應用于各類智能設備,如智能攝像頭、智能音箱等。

2、SoftAP

AP(Access Point)模式配網,也稱為熱點模式配網。其原理是嵌入式設備自身創建一個無線熱點,用戶通過手機或其他終端設備連接到這個熱點,然后在終端設備上輸入目標網絡(如家庭 WiFi)的信息,設備接收到這些信息后,就會嘗試連接到目標網絡。

  • 優點:簡單直接,不需要額外的網絡環境支持。
  • 缺點:每次配網都需要設備進入 AP 模式,操作相對繁瑣;設備創建的熱點覆蓋范圍有限。
  • 適用場景:適用于小型、簡單的嵌入式設備,如智能插座、智能燈泡等。

3、Combo配網模式

Combo 配網模式融合了多種配網方式的優勢,其中 WiFi、藍牙配網方式憑借其獨特的組合,為用戶帶來了高效且穩定的配網體驗。其核心在于設備同時搭載 WiFi 及藍牙模塊,APP 借助藍牙將設備所需連接的路由器 SSID 及密碼發送給設備。

  • 優點:藍牙技術在近距離通信上具有穩定性高、功耗低的特點,能有效避免無線信號干擾,確保網絡信息準確傳輸;而 WiFi 則負責設備后續的高速網絡連接,保障數據傳輸效率。兩者結合,不僅提升了配網成功率,還降低了用戶手動輸入信息的錯誤率,簡化了操作步驟。
  • 缺點:設備需集成兩種通信模塊,增加了硬件成本和設備功耗,同時也對軟件的兼容性和穩定性提出了更高要求。
  • 適用場景:適用于對配網穩定性和用戶體驗要求較高的中高端嵌入式設備,智能家庭中樞、智能穿戴設備等。

4、其它

NFC 配網:利用 NFC(Near Field Communication)技術,通過近距離接觸來傳輸網絡信息。用戶只需將支持 NFC 的手機靠近嵌入式設備,手機就會將網絡信息傳輸給設備,實現快速配網。例如,一些智能門鎖就支持 NFC 配網,用戶在安裝門鎖時,通過手機的 NFC 功能即可輕松完成配網。

聲波識別配網:將網絡信息編碼成特定頻率的聲波,通過手機等設備播放出來,嵌入式設備通過麥克風接收聲波并解析出網絡信息。這種方式在一些對無線信號敏感的環境中具有一定的優勢,如醫院、工廠等。

二、WiFi相關知識

WiFi 的起源可以追溯到上世紀 90 年代,它是基于 IEEE 802.11 標準的無線局域網技術。

1、802.11 協議標準

802.11 協議族包含了多個成員,如 802.11a、802.11b、802.11g、802.11n、802.11ac、802.11ax(WiFi 6)等。

不同后綴的標準在工作頻段和傳輸速率上存在差異。例如,802.11a 工作在 5G 頻段,傳輸速率最高可達 54Mbps;802.11b 工作在 2.4G 頻段,傳輸速率最高可達 11Mbps。

802.11 協議族部分成員關系:

2、WiFi 相關術語

WiFi 相關術語很多,相互關聯構成完整體系。

  • LAN(Local Area Network):局域網,是在有限范圍內(如一個辦公室、一棟樓)建立的計算機網絡,用于實現設備之間的通信和資源共享。
  • WAN(Wide Area Network):廣域網,覆蓋范圍較大,通常用于連接不同的局域網,實現更大范圍的網絡通信。
  • Band(頻段):指 WiFi 工作的頻率范圍,常見的有 2.4G 頻段和 5G 頻段。
  • Channel(信道):在頻段內劃分的不同頻率范圍,用于無線信號的傳輸。
  • Channel Width(信道寬度):指信道占用的頻率帶寬,不同的 802.11 標準支持不同的信道寬度,如 20MHz、40MHz、80MHz 等。
  • 無線 AP(Access Point):無線接入點,是一種無線網絡設備,用于將無線客戶端連接到有線網絡,起到橋梁的作用。
  • Station(STA):無線客戶端,如手機、筆記本電腦等設備,通過無線方式連接到無線 AP。
  • SSID(Service Set Identifier):服務集標識符,即無線網絡的名稱,用戶通過搜索 SSID 來找到并連接到相應的無線網絡。
  • BSSID(Basic Service Set Identifier):基本服務集標識符,是無線 AP 的 MAC 地址,用于唯一標識一個無線 AP。
  • BSS(Basic Service Set):基本服務集,由一個無線 AP 和與其連接的所有無線客戶端組成的網絡。
  • MAC(Media Access Control):媒體訪問控制,是網絡設備的物理地址,用于在數據鏈路層進行設備識別。

3、WiFi 信道與頻段

三、配網實踐

SmartLink是一個在Linux下實現的smartconfig。手機發送UDP廣播報文,待配網設備掃描所有的可用無線信道,找到發送smartConfig的報文,并鎖定在這一信道上開始接受數據。

倉庫鏈接:

https://github.com/jolin90/smartconfig

1、相關知識補充

(1)網卡工作模式

  • 廣播模式:物理地址(MAC)是0Xffffff的幀為廣播幀,工作在廣播模式的網卡接收廣播幀。
  • 多播模式:如果將網卡設置為多播模式,它可以接收所有的多播傳送幀,而不論他是不是組內成員。
  • 直接模式:只接收目的地址是自己MAC地址的幀。
  • 混雜模式:工作在混雜模式下的網卡接收所有流經網卡的幀。

查看、設置、取消混雜模式命令如:

ifconfig wlan0 #查看wlan0是否為混雜模式
ifconfig wlan0 promisc #設置wlan0為混雜模式
ifconfig wlan0 -promisc #取消wlan0混雜模式

(2)通信方式

通信方式分類:

  • 單播:單臺主機與單臺主機之間的通信;
  • 廣播:單臺主機與網絡中所有主機的通信;
  • 組播:單臺主機與選定的一組主機的通信;

IP 網絡的組播一般通過組播 IP 地址來實現,組播 IP 地址就是 D 類 IP 地址,即 224.0.0.0 至 239.255.255.255 之間的IP地址。

2、SmartLink使用

下載得到:

我們使用arm板子來做實驗。首先,需要交叉編譯,執行命令:

make CC=arm-linux-gnueabihf-gcc

把編譯生成的smartlink可執行程序傳到板子里。運行時需要跟上接口的名稱。如:

./smartlink wlan0

然后執行如下命令重新編譯:

make cleanmake

生成的mcast_app可執行程序在pc上運行,模擬手機APP發送。運行時需要傳入WiFi名稱及密碼。如:

./mcast_app Tenda_552F18 0987654321

測試時需要先運行mcast_app,再運行smartlink。smartlink收到WiFi名稱及密碼時會打印出來。

運行結果如:

這里,使用mcast_app來模擬手機APP。smartlink也提供了一個簡易的安卓手機APP,也可以使用APP進行測試:

3、SmartLink組播包協議分析

上面演示了SmartLink的使用,下面簡單介紹一些SmartLink的組播包協議。

APP發送特定協議的組播包數據給設備,設備收到后進行解析獲取路由器SSID及密碼。其協議如:

每個數據包6個字節,

  • 第1~3字節:組播包地址,為固定值0x01 0x00 0x5e。
  • 第4字節:數據包序號。
  • 第5字節:指定數據。
  • 第6個字節:指定數據。

每次傳輸若干字節。舉例說明:

SSID為"TP-LINK_hys" ,PSW為"12345678",發送組播地址如下:

0x01 0x00 0x5e 0x00  0x48  0x35
0x01 0x00 0x5e 0x01  0x68  0x2b
0x01 0x00 0x5e 0x02  0x5c  0x31
0x01 0x00 0x5e 0x03  0x0b  0x08
0x01 0x00 0x5e 0x04  'T'  '1'
0x01 0x00 0x5e 0x05  'P'  '2'
0x01 0x00 0x5e 0x06  '-'  '3'
0x01 0x00 0x5e 0x07  'L'  '4'
0x01 0x00 0x5e 0x08  'I'  '5'
0x01 0x00 0x5e 0x09  'N'  '6'
0x01 0x00 0x5e 0x0a  'K'  '7'
0x01 0x00 0x5e 0x0b  '_'  '8'
0x01 0x00 0x5e 0x0c  'h'  0x00
0x01 0x00 0x5e 0x0d  'y'  0x00
0x01 0x00 0x5e 0x0e  's'  0x00
0x01 0x00 0x5e 0x40  0x1c  0x03

其中:

(1)第1~3包數據,為特征碼包,后三個字節由組播IP映射為為組播MAC。取組播IP的后23位作為MAC,映射圖如:

圖片來源:jasonj33的博客

組播地址相關介紹可閱讀博文:

https://blog.csdn.net/wjz110201/article/details/114628203

這里,手機APP設置的組播IP固定如:

#define IPADDR_KEY0 "224.0.72.53"   /*key0:01:00:5e:00:48:35 */
#define IPADDR_KEY1 "224.1.104.43"  /*key1:01:00:5e:01:68:2b */
#define IPADDR_KEY2 "224.2.92.49"   /*key2:01:00:5e:02:5c:31 */

組播IP映射為組播MAXC,得到:

(2)第4包數據放的是SSID及PSW的長度。

(3)第5~15包數據放的則是SSID及PSW。

(4)第16包數據為校驗碼,采用連續異或校驗的方式:

Crc=Crc^0x01^(byte)0x5e^0x40
聲明:本內容為作者獨立觀點,不代表電子星球立場。未經允許不得轉載。授權事宜與稿件投訴,請聯系:editor@netbroad.com
覺得內容不錯的朋友,別忘了一鍵三連哦!
贊 3
收藏 3
關注 28
成為作者 賺取收益
全部留言
0/200
成為第一個和作者交流的人吧
主站蜘蛛池模板: 亚洲国产精品无码专区影院 | 少妇小莹的yin荡生活下视频 | 日韩欧美人妻一区二区三区 | 酒色成人网 | 国产色产综合色产在线观看视频 | 久久久69| 亚洲日本va在线观看 | 亚洲美女视频网站 | 欧美日本久久久 | 亚洲美女久久 | 我要看免费的黄色片 | 国产农村女人一级毛片了 | 欧洲成人免费 | 果冻传媒2021精品一区 | 日韩国产在线播放 | 99re免费视频 | 99热这里只有精品最新地址获取 | 毛片在线看片 | 秋霞无码一区二区视频在线观看 | 凹凸18禁在线视频 | 男女精品视频 | 网红主播精品视频在线观看 | 91年精品国产 | 国产精品网站在线观看 | 亚洲国产99在线精品一区二区 | 成人av在线大片 | 亚洲色偷偷av男人的天堂 | 成人网页 | 青青草激情视频 | 国产高清一级毛片在线不卡 | 热久久久久香蕉无品码 | 把女的下面扒开添视频 | 精品丝袜国产自在线拍高清 | av在线免费观看中文字幕 | 亚洲国产综合精品中久 | 国产精品人妻熟女a8198v久 | 91看点| aV无码久久久久不卡蜜桃 | 91视频99 | av网站免费在线播放 | 亚洲女同成av人片在线观看 |