目錄
* 一抄肖、運行環(huán)境
* 二获黔、安裝步驟
* 參考資料
* 參考命令
** 快速安裝 **
一舶得、運行環(huán)境
硬件平臺:NI IC-3173 / NI CRIO-9064
軟件平臺:NI Real-time Linux
目標(biāo):1. 在NI Real Time終端上安裝USB 無線網(wǎng)卡驅(qū)動實現(xiàn)無線上網(wǎng)挖垛;
? ? ? ? ? ?2. 在NI Real Time終端上安裝CH340G串口驅(qū)動次伶,實現(xiàn)USB擴(kuò)展串口茅撞,包括 RS232/RS485帆卓。
二、安裝步驟
---安裝思路---
1. 下載配套驅(qū)動
2. 編譯對應(yīng)平臺下的驅(qū)動
3. 安裝驅(qū)動到對應(yīng)平臺并測試
4. 設(shè)置為開機(jī)自動加載驅(qū)動
--- 準(zhǔn)備工作---
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 文檔)
(四) 開機(jī)啟動
驅(qū)動開機(jī)驅(qū)動方法參考上述 Tutorial文檔
(五) 其他設(shè)置
1. 由于NI系統(tǒng)的原因故源,無線配置需要起作用最好使用NI-Max 配置,方便易行
但對于Usb 無線配置汞贸,需要開機(jī)啟動 運行
? wpa_supplicant -B -iwlan0 -c /etc/natinst/share/wpa_supplicant.conf -Dwext &
設(shè)置開機(jī)啟動方法需參考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
========== 分割線 =====