一、 我的mini2440开发板上使用的网卡设备为水星MERCURY54M无线USB网卡 MW54U ver:7.0,其内部芯片型号为ATHEROS的ar9271。mini2440的自带linux系统里面是没有这个驱动程序的,但是在官网上usb-wifi-kits-for-mini2440-linux-2.6.32.2-20100728.tar.gz这个安装包里面是有ar9271这个驱动的。
所以首先就得,先把usb-wifi-kits-for-mini2440-linux-2.6.32.2-20100728.tar.gz这个压缩包拷贝到mini2440的linux系统中,然后直接在根系统下面解压缩,使用以下命令:
#tar -xzvf usb-wifi-kits-for-mini2440-linux-2.6.32.2-20100728.tar.gz -C /
然后到目录 /lib/firmware/ 下面可以看到这个 ar9271.fw 和 rt73.bin 文件,使用 ls -l 命令可以看到它们不是一个可执行文件, 所以为了使用网卡,必须使用以下命令修改它们的可执行权限:
#chmod a+x ar9271.fw#chmod a+x rt73.bin
之后,可以参考http://www.arm9home.net/read.php?tid-7237.html这个网址下载 《基于mini2440上使用USB无线网卡的使用手册》。(usb-wifi-kits-for-mini2440-linux-2.6.32.2-20100728.tar.gz也可以在这个网址里面下载)。不过,我不知道怎么回事,使用scan-wifi居然没有搜索到我的无线路由器,后来我看到http://www.arm9home.net/read.php?tid-1305.html这篇帖子,就模仿其中的命令连接到了我的无线路由,不过由于我的无线路由的密码使用的是ASCII五位字符加密,所以得把其中的 iwconfig wlan0 key 123456 改为 iwconfig wlan0 key s:xxxxx 最后才得以联通我的无线路由。
二、 至于我的USB摄像头,插到mini2440上,显示其驱动编号为1c4f:3002,可以被识别,使用开发板linux自带的USB摄像头软件也可以直接查看到图像,所以我算是省了查找USB摄像头驱动这一个步骤。
现在两个设备都已成功连接了,到了mini2440开发板自带linux发挥作用的时候了,在其用户光盘中有《通过网络浏览CMOS或USB摄像头-20100405》这样一个PDF文件,其中就说明了通过网页浏览mini2440摄像头的说明,也就是说mini2440自带linux里面有一个Boa服务器,可以提供网页监控摄像头的功能。由于每个人的摄像头都不一样,所以各位就按照那个PDF文档上面的说明自己去试验吧。
三、 最后,还有一点要说明的是要想在无线下面通过网页查看摄像头,直接在PC机上输入当前wlan0的IP地址再加上8080端口(例:http://192.168.0.230:8080),就可以看到一个名叫MJPG-Streamer的网页,点击Stream或是Javascript按钮,就可以观看到无线摄像头里面拍摄到的内容了。 至此,mini2440无线监控系统大功告成已!
四、 补充说明:以上方法是在PC机的WINDOWS环境下,使用无线路由器搭建的wifi下进行的实验。 下面介绍一下我使用Windows中搭建的wifi无线网络打造的无线监控系统的设计方法:
(搭建方法,请大家自行搜索相关wifi共享软件,我使用的是联想笔记本配送的闪联2.0,也可以不用安装软件,但稍稍麻烦点,可以上网搜索一下《笔记本电脑Ad-Hoc(点对点)模式组网方案》这篇文章,其中一个关键步骤就是:你得在分享wifi的主机的无线网络属性设置中将数据加密设置为禁用,因为经过我多次试验证明,在Ad-hoc网络中,mini2440开发板linux只要是连接了加密的网络后,立刻会出现以Unable to handle kernel NULL pointer dereference at virtual address 00000008 ..............一大堆出错信息,即使电脑显示无线网络已经连接,但是也ping不通开发板,更不用说打开mini2440的摄像头监控网页了,然后还得在“选择无线网络”这个网络列表中,将这个刚刚设置好的网络选中连接。最后才是对开发板一端进行设置,详细的设置命令请看后面的文章)
至此,我的开发板usb无线网卡就可以连接到这个Ad-hoc无线网络了。
五、 后来我又进入我在PC机ubuntu/linux环境下,由Ubuntu构建了一个wifi热点,搭建方法如下:ubuntu的wifi设置
1、点击任务栏的网络连接图标,在弹出菜单中先“创建新的无线网络。。。”
2、然后输入任意的网络名称以及访问密码。
3、在菜单-》选项-》网络连接-》-》无线-》(新创建的网络名称),点击编辑,确认“方法”的下拉框为“与其他计算机共享”。
而mini2440开发板一方的设置,命令步骤如下所述:
复制代码
- [root@FriendlyARM /]# modprobe ath9k_htc
- cfg80211: Calling CRDA to update world regulatory domain
- usb 1-1.4: ath9k_htc: Transferred FW: ar9271.fw, size: 51280
- usb 1-1.4: ath9k_htc: HTC initialized with 33 credits
- cfg80211: Calling CRDA for country: CN
- Registered led device: ath9k-phy0::radio
- Registered led device: ath9k-phy0::assoc
- Registered led device: ath9k-phy0::tx
- Registered led device: ath9k-phy0::rx
- usb 1-1.4: ath9k_htc: USB layer initialized
- usbcore: registered new interface driver ath9k_hif_usb
- [root@FriendlyARM /]# ifconfig wlan0 up
- [root@FriendlyARM /]# iwlist wlan0 scan
- wlan0 Scan completed :
- Cell 01 - Address: 02:16:6F:46:B5:37
- Channel:1
- Frequency:2.412 GHz (Channel 1)
- Quality=28/70 Signal level=-82 dBm
- Encryption key:off
- ESSID:"UbuntuWIFI"
- Bit Rates:1 Mb/s; 2 Mb/s; 5.5 Mb/s; 11 Mb/s
- Bit Rates:6 Mb/s; 9 Mb/s; 12 Mb/s; 18 Mb/s; 24 Mb/s
- 36 Mb/s; 48 Mb/s; 54 Mb/s
- Mode:Ad-Hoc
- Extra:tsf=0000000013353418
- Extra: Last beacon: 5730ms ago
- IE: Unknown: 000A5562756E747557494649
- IE: Unknown: 010482840B16
- IE: Unknown: 030101
- IE: Unknown: 06020000
- IE: Unknown: 2A0100
- IE: Unknown: 32080C1218243048606C
- [root@FriendlyARM /]# ifconfig wlan0 down
- [root@FriendlyARM /]# iwconfig wlan0 key off
- [root@FriendlyARM /]# iwconfig wlan0 mode ad-hoc
- [root@FriendlyARM /]# iwconfig wlan0 channel 1
- [root@FriendlyARM /]# iwconfig wlan0 essid "UbuntuWIFI"
- [root@FriendlyARM /]# ifconfig wlan0 192.168.0.222 netmask 255.255.255.0
- [root@FriendlyARM /]# ping 10.42.43.1
- PING 10.42.43.1 (10.42.43.1): 56 data bytes
- 64 bytes from 10.42.43.1: seq=1 ttl=64 time=3.733 ms
- 64 bytes from 10.42.43.1: seq=2 ttl=64 time=3.585 ms
- 64 bytes from 10.42.43.1: seq=3 ttl=64 time=3.587 ms
- 64 bytes from 10.42.43.1: seq=4 ttl=64 time=4.598 ms
- ^C
- --- 10.42.43.1 ping statistics ---
- 5 packets transmitted, 4 packets received, 20% packet loss
- round-trip min/avg/max = 3.585/3.875/4.598 ms
- [root@FriendlyARM /]# cd home/plg/mjpg-streamer/
- [root@FriendlyARM mjpg-streamer]# ls
- LICENSE mjpg_streamer start_uvc.sh
- input_s3c2410.so output_file.so start_uvc_yuv.sh
- input_testpicture.so output_http.so www
- input_uvc.so start_s3c2410.sh
- [root@FriendlyARM mjpg-streamer]# ./start_uvc.sh &
- [root@FriendlyARM mjpg-streamer]# MJPG Streamer Version.: 2.0
- i: Using V4L2 device.: /dev/video0
- i: Desired Resolution: 640 x 480
- i: Frames Per Second.: 5
- i: Format............: MJPEG
- o: www-folder-path...: ./www/
- o: HTTP TCP port.....: 8080
- o: username:password.: disabled
- o: commands..........: enabled
- [root@FriendlyARM mjpg-streamer]#
|
一切就绪后,在没有无线路由器的情况下,也可观看远程USB摄像头中的无线监控视频了。