在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

基于RK3576開發板的WiFi STA通信

ljx2016 ? 來源:ljx2016 ? 作者:ljx2016 ? 2025-05-06 14:20 ? 次閱讀

1. 網絡配置簡介

本文著重介紹如何通過配置文件配合命令行來修改網絡參數,以及如何通過程序來修改配置文件。若用戶僅想了解如何【通過桌面窗口】配置網絡,或者想知道【為什么】debian系統采用NetworkManager這種方式配置網絡,可以閱讀《Linux網絡配置方法介紹》。

NetworkManager對應的命令行工具是:nmcli和nmtui。由于這兩個工具功能過于強大和復雜,本文檔只會描述涉及到的使用方法以及參數。更全面的使用,還請用戶自行查閱NetworkManager官方相關文檔。

1.1 Connection

Connection:連接,是網絡配置的抽象表示。NetworkManager 允許用戶配置多個不同類型的Connection,每個Connection會與UUID進行唯一綁定。用戶根據需要切換或管理這些Connection。這使得在不同網絡環境下靈活地管理網絡連接成為可能,例如在家庭網絡、公司網絡、公共Wi-Fi熱點和VPN之間切換。

查看連接的命令如下所示。

nmcli connection show
wKgZO2gZqqSAKtb5AAB1D2KtCZk545.png

查看連接,用戶會發現有2個系統默認的連接。這兩個連接屬于【動態生成的連接】,一開始通過查看連接參數配置目錄,會發現沒有其對應的配置文件。

ls /etc/NetworkManager/system-connections/
wKgZPGgZqqWAeHomAAAxUplkvVg286.png

因為【動態生成的連接】是不會產生對應的【配置文件】。因此要配置這種【連接】的話,要么是通過桌面窗口,要么通過nmcli命令(nmcli connection modify

. )進行配置。這兩種方式對于應用程序來說,都不是很方便,因此我們選擇第三種方式進行管理:創建新的Connection。

1.2 GUI創建wifi Connection

wKgZO2gZqqWAWhNnAARGdvdxSk8224.png

與【動態生成的連接】不同,連上了wifi,生成Connection的同時,也會生成一個以wifi名稱命名的配置文件。

wKgZPGgZqqWAPhb_AAAvboGa5Uk066.png

1.3 命令創建wifi Connection

除了通過GUI連接wifi創建連接以外,還可以通過命令創建新的連接,這種方式以便于程序管理配置文件,命令如下所示:

nmcli connection add type wifi ifname wlan0 con-name "wlan0-con" ssid HUAWEI-0H1YW8 -- wifi-sec.key-mgmt wpa-psk wifi-sec.psk "88888888"
nmcli connection show
wKgZO2gZqqWAcTGDAAHHPd453Sg908.png

又或者先創建配置文件,再用命令進行密碼修改:

nmcli connection add type wifi ifname wlan0 con-name "wlan0-con" ssid HUAWEI-0H1YW8
nmcli connection modify "wlan0-con" wifi-sec.key-mgmt wpa-psk
nmcli connection modify "wlan0-con" wifi-sec.psk "88888888"

1.4 激活Connection

GUI方式激活:

通過右上角【小電腦圖標】,選擇不同的wifi連接,則是激活對應的Connection。注意:通過命令創建出來的wifi Connection不能在這里找到。

命令方式激活:

nmcli connection up wlan0-con

或者

nmcli connection up 6c4e19a4-d4d0-4b94-ab09-551c003274f8

1.5 修改Connection

采用下方命令打開Connection所對應的配置文件

sudo vim /etc/NetworkManager/system-connections/wlan0-con.nmconnection
wKgZPGgZqqaATOveAAEpmF6zIUk150.png

修改完畢后,請用下方重啟網絡服務,并激活網卡。

sudo systemctl restart NetworkManager
nmcli connection up wlan0-con

1.6 刪除Connection

刪除連接,命令如下所示:

nmcli connection delete wlan0-con
wKgZO2gZqqaAFC_DAABLL1mDb5Q904.png

2. 快速上手

2.1 例程源碼下載

到【百度網盤】上下載相關的單例程序:

鏈接:https://pan.baidu.com/s/1RXHMGpmGSEfFy0rb1VkXSg?pwd=1234

提取碼: 1234

比如在windows環境中,就把單例程序下載到:此電腦D:BaiduNetdisk (無規定,用戶可自主選擇),如下圖所示。

wKgZPGgZqqaANW_XAACFiSY1Idw879.png

然后把例程【復制粘貼】到nfs掛載目錄中。(不清楚目錄如何構建的,可以參考《入門指南/開發環境準備/nfs服務搭建與掛載》)

wKgZO2gZqqeAYMTgAADwWFpvLwM742.png

2.2 例程編譯&運行

通過adb shell進入開發板環境(不清楚如何通過adb進行調試,可以參考《入門指南/開發板調試方式介紹/adb調試》),執行下方命令定位到demo目錄,并且執行編譯操作。

cd /home/orin-nano/Desktop/nfs/01_network/
./build.sh
wKgZPGgZqqeAFsJfAAFx72_c4_8939.png

編譯成功后,相關的demo會生成在Release目錄下。

執行下方命令以運行demo,如下所示。

sudo ./Release/test-wifi

執行效果如下所示。

wKgZO2gZqqeACz7xAABvBvA39YI470.pngwKgZPGgZqqeAVuFKAABX7imcCkM124.png

如果出現如下現象,則說明配置文件未被創建。可以回看本文第一章,了解一下如何通過命令創建Connection。

2.3 注意

程序運行完畢以后,只是修改了Connection的配置參數,參數也不會馬上生效。要使修改后的參數生效,還需要重啟NetworkManager,以及激活相關的Connection。兩個步驟的命令如下。

3. C語言使用案例

3.1 配置文件內容介紹

NetworkManager的配置文件位于系統的/etc/NetworkManager/system-connections/目錄下,采用了經典的ini組織格式。即section、key、value格式,如下所示:

[section]
key = value

規則:section不能嵌套section;同一section下key不能重名。

3.2 配置文件操作介紹

網絡配置的C語言使用案例,代碼地址為01_network/test-wifi/main.c,供用戶編碼參考。

以下代碼展示了對Connection的基本配置操作流程:

int main(int argc, char const *argv[])
{
    char configFile[512]={0};
    sprintf(configFile,"%s%s", CONFIG_PATH, CFG_ETH0);
    
    // 讀取配置項
    printf("type = %sn", ini_read_string(configFile, "connection", "type"));
    printf("name = %sn", ini_read_string(configFile, "connection", "interface-name"));
    printf("ssid = %sn", ini_read_string(configFile, "wifi", "ssid"));
    printf("psk = %sn",  ini_read_string(configFile, "wifi-security", "psk"));
    printf("method = %sn", ini_read_string(configFile, "ipv4", "method"));
    
    // 寫入配置
    ini_write_string(configFile, "wifi-security", "auth-alg", "open");
    ini_write_string(configFile, "wifi-security", "key-mgmt", "wpa-psk");
    ini_write_string(configFile, "wifi-security", "psk", "lmo12345678");
    printf("n======================= modify password =======================n");
    printf("psk = %sn", ini_read_string(configFile, "wifi-security", "psk"));

    return 0;
}

其中 ini_read_string()函數和ini_write_string()函數是對libini的這個第三方庫一些接口的簡單封裝,具體實現于01_network/common_api/ini_wrapper.c。

若用戶需要如demo一樣地引用這個第三方庫,需要注意以下兩點。

* 需要包含頭文件:#include 。

* 編譯時,需要加上-lini作為編譯參數。

若用戶對這個第三方庫的源碼感興趣,可以訪問:

* https://sourceforge.net/projects/libini/files/libini/libini-1.1.10/

審核編輯 黃宇

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • WIFI
    +關注

    關注

    81

    文章

    5382

    瀏覽量

    207659
  • 開發板
    +關注

    關注

    25

    文章

    5584

    瀏覽量

    103042
  • rk3576
    +關注

    關注

    1

    文章

    157

    瀏覽量

    611
收藏 人收藏

    評論

    相關推薦
    熱點推薦

    基于RK3576開發板的人臉識別算法

    RK3576開發板展示人臉識別算法例程和API說明
    的頭像 發表于 05-07 16:48 ?1859次閱讀
    基于<b class='flag-5'>RK3576</b><b class='flag-5'>開發板</b>的人臉識別算法

    基于RK3576開發板的RTC使用說明

    文章主要展示RK3576開發板的RTC信息和快速上手例程
    的頭像 發表于 05-07 15:04 ?703次閱讀
    基于<b class='flag-5'>RK3576</b><b class='flag-5'>開發板</b>的RTC使用說明

    基于RK3576開發板的PWN使用說明

    RK3576開發板使用PWN教程及Demo
    的頭像 發表于 05-07 14:07 ?1206次閱讀
    基于<b class='flag-5'>RK3576</b><b class='flag-5'>開發板</b>的PWN使用說明

    基于RK3576開發板的TF卡槽使用說明

    RK3576開發板使用TF卡槽
    的頭像 發表于 05-07 09:24 ?642次閱讀
    基于<b class='flag-5'>RK3576</b><b class='flag-5'>開發板</b>的TF卡槽使用說明

    基于RK3576開發板的PCIE固態硬盤使用說明

    RK3576開發板的PICE固態硬盤使用方法
    的頭像 發表于 05-06 17:33 ?1260次閱讀
    基于<b class='flag-5'>RK3576</b><b class='flag-5'>開發板</b>的PCIE固態硬盤使用說明

    基于RK3576開發板的WDT看門狗使用說明

    RK3576開發板的WDT使用說明
    的頭像 發表于 05-06 17:15 ?541次閱讀
    基于<b class='flag-5'>RK3576</b><b class='flag-5'>開發板</b>的WDT看門狗使用說明

    基于RK3576開發板的HDMI-OUT使用說明

    RK3576開發板的HDMI-OUT使用說明
    的頭像 發表于 05-06 16:48 ?245次閱讀
    基于<b class='flag-5'>RK3576</b><b class='flag-5'>開發板</b>的HDMI-OUT使用說明

    基于RK3576開發板的揚聲器和耳機使用說明

    RK3576開發板的揚聲器和耳機使用說明
    的頭像 發表于 05-06 16:36 ?281次閱讀
    基于<b class='flag-5'>RK3576</b><b class='flag-5'>開發板</b>的揚聲器和耳機使用說明

    基于RK3576開發板的MIPI-DSI使用

    MIPI DSI接口是由MIPI聯盟下的Display工作組指定的DSI(Display Serial Interface)的接口標準。rk3576開發板使用mipi-dsi教程
    的頭像 發表于 05-06 16:11 ?283次閱讀
    基于<b class='flag-5'>RK3576</b><b class='flag-5'>開發板</b>的MIPI-DSI使用

    RK3576開發板技術分享 | Weston 配置技巧:定制你的桌面體驗!

    RK3576開發板技術分享 | Weston 配置技巧:定制你的桌面體驗!
    的頭像 發表于 03-07 10:17 ?564次閱讀
    <b class='flag-5'>RK3576</b><b class='flag-5'>開發板</b>技術分享 | Weston 配置技巧:定制你的桌面體驗!

    迅為RK3576開發板Android?多屏顯示

    迅為RK3576開發板Android?多屏顯示
    的頭像 發表于 01-16 16:58 ?891次閱讀
    迅為<b class='flag-5'>RK3576</b><b class='flag-5'>開發板</b>Android?多屏顯示

    迅為RK3576開發板核心與底板接口硬件介紹

    迅為RK3576開發板核心與底板接口硬件介紹
    的頭像 發表于 01-14 15:15 ?1351次閱讀
    迅為<b class='flag-5'>RK3576</b><b class='flag-5'>開發板</b>核心<b class='flag-5'>板</b>與底板接口硬件介紹

    敬請期待 | 迅為RK3576開發板即將發布

    敬請期待 | 迅為RK3576開發板即將發布
    的頭像 發表于 11-22 15:13 ?573次閱讀
    敬請期待 | 迅為<b class='flag-5'>RK3576</b><b class='flag-5'>開發板</b>即將發布

    米爾RK3576開發板特惠活動!

    近日,米爾電子發布基于瑞芯微RK3576核心開發板RK3576作為國產熱門處理器,其高性能數據處理能力、領先的AI智能分析、強大的擴展性與兼容性受到廣大
    的頭像 發表于 11-12 01:00 ?770次閱讀
    米爾<b class='flag-5'>RK3576</b><b class='flag-5'>開發板</b>特惠活動!

    新品體驗 | RK3576開發板

    RK3399、RK3566、RK3568、RK3588、RK3576等型號的核心與評估
    的頭像 發表于 11-01 08:08 ?1827次閱讀
    新品體驗 | <b class='flag-5'>RK3576</b><b class='flag-5'>開發板</b>
    主站蜘蛛池模板: 国产主播在线观看 | 激情五月婷婷综合 | 国产伦精品一区二区三区四区 | 91中文在线观看 | 日本三级视频在线 | 国产午夜在线观看视频 | 青楼社区51在线视频视频 | 哪个网站可以看av | 色播视频在线观看免费 | 五月激情综合丁香色婷婷 | 日本最黄视频 | 五月天婷婷一区二区三区久久 | 欧美猛交喷潮在线播放 | 国模私拍大尺度视频在线播放 | 91大神在线看 | 中国业余老太性视频 | 在线午夜视频 | 交专区videossex另类 | 久久天天丁香婷婷中文字幕 | 色系视频在线观看免费观看 | 日日干狠狠干 | 操狠狠| 性叉叉 | 福利片欧美 | 亚洲欧洲精品成人久久曰影片 | 美女扒开腿让男人桶尿口 | 成人看片在线观看 | 成年片免费网址网站 | 久久夜色精品国产飘飘 | 在线免费成人网 | 狠狠成人 | 女人牲交一级毛片 | 成人黄色一级片 | 欲色影视 | 久久99精品一级毛片 | 狠狠色欧美亚洲狠狠色www | 妖精视频永久在线入口 | 欧美视频小说 | 四虎影院wwww | 欧美精品二区 | 日韩欧美卡一卡二卡新区 |