基于S3C2410芯片Linux-Wlan-ng的移植和應(yīng)用
3.2 USB無線驅(qū)動(dòng)程序的移植 本文引用地址:http://www.ex-cimer.com/article/152320.htm
由于Linux操作系統(tǒng)的開源特性和USB無線網(wǎng)卡逐漸成為標(biāo)準(zhǔn)設(shè)備,網(wǎng)絡(luò)上存在一部分開放的驅(qū)動(dòng)源碼程序。本文在此基礎(chǔ)上做一些修改,移植到嵌入式平臺(tái)下即可成功驅(qū)動(dòng)設(shè)備。NETGEAR公司的MA111型網(wǎng)卡,其芯片為prism2系列,故可選用linux-wlan-ng系列的驅(qū)動(dòng)程序,驅(qū)動(dòng)程序可以在http://www.linux-wlan.com網(wǎng)站上下載。編譯目標(biāo)文件需要建立宿主機(jī)平臺(tái),宿主機(jī)的操作平臺(tái)為:X86+Redhat 9.0操作系統(tǒng),在此基礎(chǔ)上建立交叉編譯環(huán)境arm-linux-gcc。編譯的具體步驟如下:
①下載USB無線網(wǎng)卡驅(qū)動(dòng)程序并解壓:
tar zxvf linux-wlan-ng-0.2.1-pre11.tar.gz
②vi src/mkmeta/Makefile
在Makefile文件中添加變量HOST_CC= gcc
③運(yùn)用make config命令配置運(yùn)行腳本
Build Prism2.5 USB (_usb) driver? (y/n) [y]: y
Linux source directory:根據(jù)具體情況而定
Prefix for build host compiler? (rarely needed) []: arm-linux-
④運(yùn)用make命令對(duì)配置好的驅(qū)動(dòng)程序進(jìn)行編譯
⑤驅(qū)動(dòng)程序編譯好后(prism2_usb.o和p80211.o)插上無線網(wǎng)卡,手動(dòng)加載驅(qū)動(dòng)程序,命令
如下:
#insmod prism2_usb.o
#insmod p80211.o prism2_doreset=1
4.無線傳輸測(cè)試
無線數(shù)據(jù)的傳輸測(cè)試包括兩種測(cè)試: AP模式和 ADHOC模式。在具體的測(cè)試過程中需要
關(guān)閉etho,打開wlan0。在 AP模式情況下設(shè)置開發(fā)板的 IP地址為:192.168.0.221,而無線路由器的 IP地址為:192.168.0.1,SSID為:AIBO_W_NET。對(duì) USB 無線網(wǎng)卡設(shè)備進(jìn)行配置, 包括設(shè)置網(wǎng)絡(luò)名稱、安全密碼、以及IP 地址等,AP模式下具體命令和測(cè)試結(jié)果如下:
./wlanctl wlan0 lnxreq_ifstate ifstate=enable
./wlanctl wlan0 lnxreq_autojoin ssid=AIBO_W_NET authtype=opensystem
./ifconfig eth0 down
./ifconfig wlan0 192.168.0.221 netmask 255.255.255.0 broadcast 192.168.0.255
經(jīng)過以上命令配置后,運(yùn)用PING命令測(cè)試開發(fā)板和路由器之間的通信完全暢通,說明開發(fā)板和上位機(jī)可以無線通信,為項(xiàng)目實(shí)現(xiàn)無線傳輸圖像數(shù)據(jù)奠定基礎(chǔ)。如圖4.1所示:
5. 無線傳輸?shù)?a class="contentlabel" href="http://www.ex-cimer.com/news/listbylabel/label/應(yīng)用">應(yīng)用
針對(duì)S3C2410芯片和Linux操作系統(tǒng)平臺(tái)移植Linux-Wlan-ng主要應(yīng)用到嵌入式數(shù)控系統(tǒng)中采集加工零件的圖像數(shù)據(jù),監(jiān)視數(shù)控系統(tǒng)中零件加工過程和精確測(cè)量。因?yàn)長(zhǎng)inux操作系統(tǒng)中嵌有ov511芯片的驅(qū)動(dòng),故在編譯Linux操作系統(tǒng)時(shí)需要加載ov511驅(qū)動(dòng),有動(dòng)態(tài)和靜態(tài)兩種加載方式。本文采用靜態(tài)加載方式,在系統(tǒng)啟動(dòng)時(shí)就不需要手動(dòng)加載驅(qū)動(dòng)程序。主要步驟:
①(*)選擇Multimedia device->下的Video for linux。加載video4linux模塊, 為視頻采集設(shè)備提供了編程接口;
②在usb support->目錄下(*)選擇support for usb和usb camera ov511 support。這使得在內(nèi)核中加入了對(duì)采用OV511接口芯片的USB數(shù)字?jǐn)z像頭的驅(qū)動(dòng)支持。
評(píng)論