1. 程式人生 > >基於QT介面的嵌入式wifi操作

基於QT介面的嵌入式wifi操作

硬體:Tiny4412開發板,360wifi二代

軟體:開發板移植Qt5.7,wifi驅動及wifi操作指令集(iw,wpa_supplicant)

簡介:

使用system系統操作命令將原先命令列對wifi的操作隱藏在程式中進行,程式使用pushboutton掃描周圍wifi,將wifi顯示在combobox控制元件中,在lineEdit控制元件中輸入密碼,連線wifi成功會顯示相應的IP地址等資訊。

 Qt移植,360wifi移植到開發板及其他wifi相關操作在網上能找到相應教程。(移植USB wifi時需要核心開啟無線網路的支援)。軟體只要在PC機上完成相應程式編寫,即可在執行。

 

關鍵程式碼

mainwindow.h

基於QT介面的嵌入式wifi操作
mainwindow.cpp

基於QT介面的嵌入式wifi操作

基於QT介面的嵌入式wifi操作
這段程式碼中只要連線wifi成功,便設定靜態IP,也可以自動獲取IP。(考慮到設定靜態IP方便其他操作)獲取IP資訊的函式不受影響。

基於QT介面的嵌入式wifi操作

基於QT介面的嵌入式wifi操作
wifi的連線資訊儲存在wpa_supplicant.conf檔案中。為了方便操作,只是簡單的將wifi賬號與密碼追加到檔案中而已。wpa_supplicant.conf檔案如下

# WPA-PSK/TKIP

ctrl_interface=/var/run/wap_supplicant

ap_scan=1

update_config=1

network={

        key_mgmt=WPA-PSK

        proto=WPA

        pairwise=TKIP CCMP

        group=TKIP CCMP

 

最終效果

基於QT介面的嵌入式wifi操作
基於QT介面的嵌入式wifi操作
基於QT介面的嵌入式wifi操作
基於QT介面的嵌入式wifi操作
基於QT介面的嵌入式wifi操作

轉自:http://blog.sina.com.cn/s/blog_e7d84b380102x34m.html