【NI】在NI RT Linux上安裝USB 無線網(wǎng)卡驅(qū)動及CH340G RS232/485驅(qū)動

目錄

* 一、運行環(huán)境

* 二、安裝步驟

* 參考資料

* 參考命令

** 快速安裝 **

一、運行環(huán)境

硬件平臺:NI IC-3173 / NI CRIO-9064

軟件平臺:NI Real-time Linux

目標:1. 在NI Real Time終端上安裝USB 無線網(wǎng)卡驅(qū)動實現(xiàn)無線上網(wǎng);

? ? ? ? ? ?2. 在NI Real Time終端上安裝CH340G串口驅(qū)動,實現(xiàn)USB擴展串口,包括 RS232/RS485。

二、安裝步驟

---安裝思路---

1. 下載配套驅(qū)動

2. 編譯對應(yīng)平臺下的驅(qū)動

3. 安裝驅(qū)動到對應(yīng)平臺并測試

4. 設(shè)置為開機自動加載驅(qū)動

--- 準備工作---

1. 安裝gcc

opkg update

opkg install gcc

由于在NI 平臺上安裝gcc后可能不能直接使用,因為gcc此時使用的是x86_64-nilrt-linux-gcc,所以需要配置一下

source /usr/local/natinst/tools/versioning_utils.sh

setup_versioning_env

# 調(diào)用gcc 的時候使用

versioning_call gcc

此時 使用 find命令查找到gcc所在位置,加入到Path路徑即可

export PATH=$PATH:yourpath

2. 安裝 wireless-tools (iwconfig)工具

opkg update

opkg install wireless-tools

在使用 iwconfig 命令時,可能會出現(xiàn)? SIOCSIFFLAGS: Operation not possible due to RF-kill?錯誤提示,可參考下文解決

SIOCSIFFLAGS: Operation not possible due to RF-kill

運行?

rfkill list all

rfkill unblock wifi

3.?


注意:在安裝時需要從NI 的倉庫更新程序,由于NI服務(wù)器在國外,速度可能會限制,此時可以發(fā)揮主觀能動性(爬梯)


(一) 下載驅(qū)動

1) 【RTL8292EU】根據(jù)NI論壇上網(wǎng)友的使用經(jīng)驗,Realtek瑞昱RTL8xxxx系列的網(wǎng)卡有成功使用者,故筆者調(diào)查后選用了 RTL8192EU 芯片的無線網(wǎng)卡,驅(qū)動可以從官網(wǎng)或者github上下載。

https://github.com/lingqing/rtl8192eu_nirtlinux_driver

可以先安裝git ,使用git下載

opkg install git

git clone?https://github.com/lingqing/rtl8192eu_nirtlinux_driver

cd rtl8192eu_nirtlinux_driver

versioning_call make

等待編譯成功


此倉庫包含 IC-3173和Crio-9064的驅(qū)動,分別在master和crio分支

(注意:安裝驅(qū)動后一定要保證Target(3173orcrio時間保持最新,否則Max無法識別網(wǎng)卡 )

2) 【CH340G】此驅(qū)動亦可從網(wǎng)上搜索下載,或者從GitHub行下載。https://github.com/lingqing/ch34x_nirtlinux_driver

(二)編譯驅(qū)動

驅(qū)動編譯時需參考NI官方文檔

Tutorial: Adding Kernel Modules on NI Linux Real-Time

在本驅(qū)動中,需要注意及修改的地方主要包括

1) Makefile文件

(1) 修改平臺 配置,主要包括 內(nèi)核源碼目錄 為 /var/volatile/tmp/headers/kernel

(參考Tutorial 文檔)


(四) 開機啟動

驅(qū)動開機驅(qū)動方法參考上述 Tutorial文檔


(五) 其他設(shè)置

1. 由于NI系統(tǒng)的原因,無線配置需要起作用最好使用NI-Max 配置,方便易行

但對于Usb 無線配置,需要開機啟動 運行

? wpa_supplicant -B -iwlan0 -c /etc/natinst/share/wpa_supplicant.conf -Dwext &

設(shè)置開機啟動方法需參考NI官方文檔

Tutorial: Installing Startup Scripts on NI Linux Real-Time

2. 在安裝3173驅(qū)動時,編譯成功后,使用insmod 8192eu.ko,提示錯誤:insmod: ERROR: could not insert module 8192eu.ko: Unknown symbol in module

原因是由于該模塊有其他依賴,我的解決辦法:

# modinfo ./8192eu.ko | grep depend

depends:? ? ? ? cfg80211

# modprob cfg80211

# insmod 8192eu.ko

這是因為需要cfg80211內(nèi)核模塊支持,

參考insmod: error inserting './igb.ko': -1 Unknown symbol in module 的問題所在


==參考資料

1. ?論壇驅(qū)動安裝參考?RAD Utility doesn't properly copy over USB Wi-Fi Dongle

2. ?論壇Wifi配置參考?Re: [SOLVED] myRIO-1950 - Wifi dongle driver compilation

3. ?iwconfig 啟動wifi故障:SIOCSIFFLAGS: Operation not possible due to RF-kill

4.? 在Linux 使用 wpa_cli配置無線網(wǎng)絡(luò):在Linux上配置無線網(wǎng)絡(luò)Linux 下命令行連接Wifi方法

5.? iwconfig用法:wifi測試相關(guān)(iwconfig,WPA Supplicant用法)


==參考命令

1. 查找命令: find?dir?-name name

==快速安裝

1. IC-3173

cd yourpath

git clone -b master https://github.com/lingqing/rtl8192eu_nirtlinux_driver.git?

cd rtl8192eu_nirtlinux_driver

cp 8192eu.ko /lib/modules/`uname -r`/kernel

depmod

modprobe 8192eu.ko

reboot


2 CRIO-9064

cd yourpath

git clone -b crio https://github.com/lingqing/rtl8192eu_nirtlinux_driver.git

cd rtl8192eu_nirtlinux_driver

cp 8192eu.ko /lib/modules/`uname -r`/kernel

depmod

modprobe 8192eu.ko

reboot

========== 分割線 =====


最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容