国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

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

3天內(nèi)不再提示

WiFi驅(qū)動移植過程命令交叉編譯

strongerHuang ? 來源:嵌入式基礎(chǔ)學(xué)習(xí) ? 作者:嵌入式基礎(chǔ)學(xué)習(xí) ? 2021-06-13 15:28 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

在今天分享一篇關(guān)于 WiFi驅(qū)動的文章,希望對正在做WiFi驅(qū)動的同學(xué)有幫助。

1 簡介

WiFi 是什么?能用來做什么?

都 2021 年了,相信您對 WiFi 一定不陌生了。

可以參考這里的百度百科釋義:

Wi-Fi,在中文里又稱作“行動熱點”,是Wi-Fi聯(lián)盟制造商的商標做為產(chǎn)品的品牌認證,是一個創(chuàng)建于IEEE 802.11標準的無線局域網(wǎng)技術(shù)?;趦商紫到y(tǒng)的密切相關(guān),也常有人把Wi-Fi當(dāng)做IEEE 802.11標準的同義術(shù)語。

那 WiFi 能用來干什么呢?

手機為例,很明顯有兩個功能:

開啟 WiFi ,連接到路由器;

開啟熱點(AP),讓別人連接到由自己設(shè)備 WiFi 開出來的路由;

這兩個場景,在實際中已經(jīng)很常見了。

本次 WiFi 驅(qū)動移植,應(yīng)用場景是什么呢?

簡單的說,就是我有一塊控制板,現(xiàn)在需要增加 WiFi 模塊,讓設(shè)備可以通過 WiFi ,正常連接到網(wǎng)絡(luò)。

應(yīng)用場景也有很多,比如這些:

對安裝環(huán)境要求較高的地方(盡可能少的接線);

不易連接有線網(wǎng)絡(luò)的地方;

低成本,不想用 4G 的地方;

僅用作局域網(wǎng)通信;

...

說到這里,還有一個比較重要的場景,就是設(shè)備端作為一個 Web 服務(wù)器,可以接入其他設(shè)備,比如手機 APP 等,進行功能參數(shù)的配置。這塊考慮后邊單獨寫一篇文章總結(jié)。

設(shè)備怎么與 WiFi 模塊通信?有哪幾種方式?

目前主流的方案有兩種:USBSDIO ;

不過由于 USB 方案,適配相對簡單,因此選用 USB 方式的芯片。

生活中常見的 USB 無線網(wǎng)卡,類似的也是這種方式。

備注:具體使用哪種接口,還要結(jié)合實際情況選擇。

關(guān)于 USB 方式和 SDIO 方式,可以看看這份參考資料,WIFI的USB和SDIO接口是什么??

硬件怎么連接?是否需要天線?如果不需要天線有什么問題?天線不適配又有什么問題?

使用 USB 方式的 WiFi 模組,硬件接線較為方便,如下圖所示

6bc5c7c4-c4b8-11eb-9e57-12bb97331649.png

截圖源自創(chuàng)凌官網(wǎng)

由上圖可以看到,引腳功能如下:

D+:USB接口+

D-:USB接口-

ANT:天線接口

而且整體尺寸很小,圖中尺寸單位為毫米(mm)。

下一個問題,肯定是需要天線的,否則 WiFi 無法發(fā)射出來信號。現(xiàn)象就是:AP 模式下,搜索不到路由。

如果天線不適配,則不能達到最大利用率。實際現(xiàn)象:WiFi 網(wǎng)速慢,網(wǎng)絡(luò)連接不穩(wěn)定,ping 丟包等。

2 整體流程

這一部分,就回顧一下,從拿到 WiFi 模塊,到最后產(chǎn)品交付的全流程,然后復(fù)盤總結(jié)一下。

我把整個過程大致分為三個階段

其實在這之前,還應(yīng)該有一個硬件環(huán)境準備階段。

2.1 基礎(chǔ)移植

此階段的終極目的:使系統(tǒng)檢測到 WiFi 網(wǎng)卡。為什么呢?

USB WiFi 的基本操作,都是通過命令行實現(xiàn),因此必須要先檢測到 WiFi 網(wǎng)卡,才能針對此網(wǎng)卡,進行特定操作。

本質(zhì)與操作有線網(wǎng)卡 eth0 類似。

這里首先要做的就是驅(qū)動移植,將官方的驅(qū)動,移植到現(xiàn)有內(nèi)核中,這樣才能在內(nèi)核菜單中看到對應(yīng)模塊。

接著需要修改內(nèi)核選項,使能所用的 WiFi 模塊。

可以參考文章「詳細記錄丨Realtek RTL8188FU WiFi 驅(qū)動移植」

最后肯定是要編譯,生成新的內(nèi)核文件,可以使用掛載內(nèi)核的方式,驗證一下新編譯的文件是否正常運行。

如果可以看到 WiFi 網(wǎng)卡驅(qū)動,則表示內(nèi)核編譯無誤;否則,需要重復(fù)上述步驟,進行檢查;

PS:一定要確保硬件連線無誤,沒有斷路、短路、接反等問題。

2.2 命令交叉編譯

經(jīng)過上個階段,我們已經(jīng)可以正常檢測到網(wǎng)卡了。

這個階段,主要是準備一些工具,也就是一些用來操作 WiFi 的命令、依賴的庫文件等;

這個階段可以參考文章:「詳細記錄丨Realtek RTL8188FU WiFi 命令編譯」

最后記得把編譯生成的命令,放到文件系統(tǒng)中的對應(yīng)路徑。

注意命令權(quán)限,正常應(yīng)該是 755 ,一定要有可執(zhí)行權(quán)限?。。?/p>

當(dāng)我們準備好所需命令后,就可以編寫一些自動化的腳本,這樣在程序中,只需調(diào)用對應(yīng)腳本文件即可。

當(dāng)然了,一些特殊文件,比如保存 WiFi 名稱密碼的文件,由于需要經(jīng)常修改,因此還需要在程序中進行寫文件操作。

我的做法是先在文件系統(tǒng)中,給一個默認的初始文件,當(dāng)參數(shù)有改變時,重新再寫一次文件。

其實也可以單獨修改文件中的某一部分,但是經(jīng)過評估,發(fā)現(xiàn)數(shù)據(jù)量不大,直接擦了重寫,更加簡單方便!

2.3 業(yè)務(wù)開發(fā)

第一個應(yīng)用場景:連接路由

即需要控制 WiFi 模塊,連接到特定的路由,進行網(wǎng)絡(luò)通信、數(shù)據(jù)交互等。

此時可以參考文章:「詳細記錄丨Realtek RTL8188FU WiFi 連接路由」

第二個應(yīng)用場景:開啟 AP 熱點

也就是設(shè)備本身,需要發(fā)射出來信號,以供其他設(shè)備連接。

此時可以參考文章:「詳細記錄丨Realtek RTL8188FU WiFi 開啟熱點」

其實還有另外一個應(yīng)用場景:Web服務(wù)器,不過我想后邊單獨出一篇文章來寫。

是什么呢?簡單說就是一個 HTTP Server ,這個 Server 可以處理 POST 請求,進而實現(xiàn)與其他移動端設(shè)備的數(shù)據(jù)交互。

結(jié)合本項目,是用于 APP 給設(shè)備配置功能參數(shù)。

3 問題匯總

由于自己在做這一塊的時候,遇到太多坑了,因此覺得很有必要再總結(jié)一下,希望能幫到您~

WiFi 配置為 AP 模式需要做什么?注意什么?

WiFi 開啟 AP 模式,說白了,就兩點要求:找得到,連得上;

找得到:我們總得能看到這個 WiFi 熱點吧?

連得上:我們即使看到了,也得能正常連上去吧?

這里進一步延伸,就有兩個技術(shù)點

必須要選擇合適的天線,否則信號較難發(fā)射出來,又或者信號不好;

服務(wù)端需要有 DHCP 功能,確保設(shè)備可以正常連接,正常獲取到 IP 地址;

其實腳本文件中的這一步,就是自動分配 IP 地址的過程。

如果沒有開啟 DHCP 功能,有什么異常?

我實際遇到的異常是:手機打開 WiFi 開關(guān),點擊連接 WiFi ,發(fā)現(xiàn)一直處于獲取 IP 地址的過程中,始終無法連接上去,后經(jīng)查找資料,才發(fā)現(xiàn)還需要服務(wù)端自動分配 IP 地址。

WiFi 開啟 AP 模式,信道選擇有什么注意的?

關(guān)于這個問題,強烈推薦這篇教程 為什么WiFi自動信道選到的信道多數(shù)在1/6/11(https://blog.csdn.net/linuxjourney/article/details/39828553)

經(jīng)過實際測試,發(fā)現(xiàn)修改為信道 11 ,效果要好一點。當(dāng)然,這個還是要結(jié)合實際情況來定

具體表現(xiàn)就是:可以更快的找到 WiFi 熱點,連接也比較穩(wěn)定。

PS:自我感覺了解的不是很充分,如果您有不同見解,歡迎留言指出,十分感謝!比心

如果信道選擇的不對,造成的問題,具體表現(xiàn)有這幾種

WiFi 信號強度不好;

WiFi 信號穩(wěn)定性不好;

找到 WiFi 路由,需要的時間較久;

WiFi 模塊天線選擇問題

這個問題,極其重要。

剛開始拿到樣品后,我們使用現(xiàn)有的其他天線,有好幾種不同的,發(fā)現(xiàn)測試結(jié)果總是不盡人意。

一個 8M 的文件,傳輸過程需要好幾分鐘;實際測到的速度,也就幾十 kb ,用起來也很糟心。

后來我們的硬件工程師,單獨把我們的樣機,送到天線廠商那做了適配,回來后,發(fā)現(xiàn)效果還真是不錯。

因此,一款合適的天線,還是極其重要的!??!

WiFi 模塊相關(guān)問題,是否跟驅(qū)動有關(guān)系?

這個問題,我目前還沒有測試。

但是之前把問題反饋給供應(yīng)商的時候,他們是給了一個新的 WiFi 驅(qū)動程序,讓再測試一下。

因此,自我感覺,還是有一定影響的。

天線安裝位置問題

由于我們的設(shè)備,是集成在一個很小的外殼里邊,而且有大部分面積,都是金屬材料。

然后設(shè)備還有 4G 、WiFi 、兩個藍牙模塊,這些無線模塊之間,信號頻段又會互相造成干擾。

因此安裝位置一定要找好,多考慮考慮。

4 總結(jié)

第一次做這樣的總結(jié)復(fù)盤,如有不適之處,煩請?zhí)岢瞿膶氋F意見,謝謝您!

原文標題:我對 WiFi 驅(qū)動移植過程,做了一次總結(jié)復(fù)盤

文章出處:【微信公眾號:strongerHuang】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

責(zé)任編輯:haq

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 驅(qū)動
    +關(guān)注

    關(guān)注

    12

    文章

    1956

    瀏覽量

    88552
  • WIFI
    +關(guān)注

    關(guān)注

    82

    文章

    5509

    瀏覽量

    213592

原文標題:我對 WiFi 驅(qū)動移植過程,做了一次總結(jié)復(fù)盤

文章出處:【微信號:strongerHuang,微信公眾號:strongerHuang】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    技術(shù)分享 | RK3506如何交叉編譯frp wireguard

    RK3506擁有著不錯的性價比以及與之相匹配的性能優(yōu)勢,非常適合用來做邊緣計算網(wǎng)關(guān)、小型數(shù)據(jù)收集端點等。今天給大家?guī)韮煽顑?nèi)網(wǎng)穿透工具的交叉編譯移植,方便在RK3506上搭建相關(guān)應(yīng)用。在編譯
    的頭像 發(fā)表于 12-25 17:29 ?595次閱讀
    技術(shù)分享 | RK3506如何<b class='flag-5'>交叉</b><b class='flag-5'>編譯</b>frp wireguard

    別再迷糊了!Linux交叉編譯到底是個啥?一文講清楚

    很多工程師第一次聽到“交叉編譯”這4個字時,腦袋里往往會冒出兩個字: 抽象 。 明明寫代碼寫得好好的,為啥還要搞一個“交叉”?編譯不就是把源代碼變成可執(zhí)行程序嗎,難道還會繞幾個彎? 別
    的頭像 發(fā)表于 12-03 16:28 ?1013次閱讀
    別再迷糊了!Linux<b class='flag-5'>交叉</b><b class='flag-5'>編譯</b>到底是個啥?一文講清楚

    Linux 下交叉編譯實戰(zhàn):跑起來你的第一個 STM32 程序

    很多開發(fā)者第一次接觸STM32,總會被“交叉編譯”、“燒錄程序”等概念繞暈。其實方法很簡單:在Linux下配置交叉編譯環(huán)境,編寫簡單程序,然后燒錄到STM32,就可以看到成果了。本文帶
    的頭像 發(fā)表于 11-24 19:04 ?819次閱讀
    Linux 下<b class='flag-5'>交叉</b><b class='flag-5'>編譯</b>實戰(zhàn):跑起來你的第一個 STM32 程序

    CIE全國RISC-V創(chuàng)新應(yīng)用大賽 人臉識別系統(tǒng)介紹與移植

    上遇到了一些曲折。本項目移植主要難點就在這方面,下面詳細介紹移植insightface的過程。 一、環(huán)境安裝流程(解決編譯與版本沖突問題) 1.1 安裝系統(tǒng)級
    發(fā)表于 11-08 11:19

    RK3506開發(fā)板QT Creator開發(fā)手冊,交叉編譯工具鏈與QT應(yīng)用示例,入門必備

    本文基于觸覺智能RK3506核心板/開發(fā)板介紹QTCreator交叉編譯配置與QT應(yīng)用示例。如需購買開發(fā)板進行評估驗證簡介QTCreatorQtCreator?是由TheQtCompany開發(fā)的跨平臺集成開發(fā)環(huán)境(IDE),專為Qt框架設(shè)計,支持C++、QML、Pyth
    的頭像 發(fā)表于 09-30 16:26 ?3687次閱讀
    RK3506開發(fā)板QT Creator開發(fā)手冊,<b class='flag-5'>交叉</b><b class='flag-5'>編譯</b>工具鏈與QT應(yīng)用示例,入門必備

    創(chuàng)龍 瑞芯微 RK3588 國產(chǎn)2.4GHz八核 工業(yè)開發(fā)板—Qt工程編譯、GPU核心使用說明

    本文圍繞創(chuàng)龍科技研發(fā)的評估板,詳細說明 Qt 工程編譯與 GPU 核心使用方法。涵蓋基于命令行和 Qt Creator 工具的 Qt 工程編譯流程,包括交叉
    的頭像 發(fā)表于 09-29 14:16 ?725次閱讀
    創(chuàng)龍 瑞芯微 RK3588 國產(chǎn)2.4GHz八核 工業(yè)開發(fā)板—Qt工程<b class='flag-5'>編譯</b>、GPU核心使用說明

    AP6181移植到STM32H723,wifi庫初始化錯誤怎么解決?

    wifi_image_0.1.rbl,OTA庫采用了libota_noalgo_0.1.2_stm32l4_gcc.a. 已經(jīng)成功移植了FAL、SFUD、easyflash、filesystem,sdio驅(qū)動使用了art-pi
    發(fā)表于 09-18 08:20

    求助,關(guān)于NanoEdge AI Studio生成的庫交叉編譯器版本疑問求解

    我使用的是NanoEdge AI Studio v4.3.1,跟著官方交教程生成了庫libneai.a,我通過metadata.json文件得知生成這個庫的交叉編譯器版本是\"
    發(fā)表于 08-08 07:25

    【HZ-T536開發(fā)板免費體驗】3、移植星閃WS73模塊

    由于前段時間沒事兒干,購買了安信可的星閃模塊,順便想折騰一下。就嘗試一下,在T536這個板子上能不能跑星閃的模塊,移植一下驅(qū)動。 在嘗試的過程中,發(fā)現(xiàn)官方Ubuntu鏡像里的內(nèi)核過于精簡(未包含
    發(fā)表于 07-31 19:46

    【VisionFive 2單板計算機試用體驗】人臉識別1——交叉編譯環(huán)境搭建

    ,但是小了就只有12個核心在工作了 接下來就是漫長的編譯過程了,預(yù)計需要1h,耐心等待吧,核心越多編譯時間越短 編譯過程中物理機占用也是很大
    發(fā)表于 07-20 23:59

    【HZ-T536開發(fā)板免費體驗】2 - 交叉編譯倉頡編程語言程序到開發(fā)板運行

    編譯 雖然T536 MINI的能力很強,理論上可以本機編譯,但是考慮到在開發(fā)板上編輯程序不方便,還是采用交叉編譯的方式。前面我曾經(jīng)在樹莓派4上測試過倉頡的0.53版本,這次采用1.0版
    發(fā)表于 07-16 21:27

    【米爾-RK3562開發(fā)板試用評測】EtherCat移植、編譯

    目前下的內(nèi)核原碼目錄中。直接cd進入即可。 make menuconfig 找到網(wǎng)卡驅(qū)動,編譯為模塊。要注意開發(fā)板上使用的網(wǎng)絡(luò)芯片的型號,對應(yīng)進行編譯。 由于EtherCat的實時性比較高,所以,要
    發(fā)表于 05-28 14:49

    不借助Linux系統(tǒng),在Windows下如何搭建ZMC900E交叉編譯環(huán)境

    不需要依賴笨重的虛擬機,也不需要安裝雙系統(tǒng)。拋開繁瑣的環(huán)境準備,在Windows上輕松搭建交叉編譯環(huán)境。本文將介紹如何在Windows上搭建交叉編譯環(huán)境,不借助Linux系統(tǒng),直接進行
    的頭像 發(fā)表于 05-21 11:34 ?936次閱讀
    不借助Linux系統(tǒng),在Windows下如何搭建ZMC900E<b class='flag-5'>交叉</b><b class='flag-5'>編譯</b>環(huán)境

    迅為RK3568開發(fā)板內(nèi)核模塊實現(xiàn)-設(shè)置交叉編譯

    1 下載網(wǎng)盤資料下的交叉編譯器,網(wǎng)盤路徑為:“iTOP-3568 開發(fā)板\\\\03_【iTOP-RK3568 開 發(fā)板】指南教程\\\\02_Linux 驅(qū)動配套資料\\\\03_交叉
    發(fā)表于 04-21 16:45

    FPGA Verilog HDL語法之編譯預(yù)處理

    Verilog HDL語言和C語言一樣也提供了編譯預(yù)處理的功能。“編譯預(yù)處理”是Verilog HDL編譯系統(tǒng)的一個組成部分。Verilog HDL語言允許在程序中使用幾種特殊的命令(
    的頭像 發(fā)表于 03-27 13:30 ?1441次閱讀
    FPGA Verilog HDL語法之<b class='flag-5'>編譯</b>預(yù)處理