论文部分内容阅读
摘要:本文介绍了一款无线网卡在嵌入式设备的移植和应用。主要内容包括:无线网卡型号的选择、无线网卡驱动程序的移植、安全认证的配置和使用以及保证网络连接的策略方案。
关键词:NW335;嵌入式Linux移植;WPA
1 背景
当今的物联网时代,移动终端设备的通信得到广泛的应用。各种设备相继接入无线网络,从而实现更灵活、更方便快速的网络通信。
无线网卡模块是实现无线网络通信的硬件条件,目前来看主要有两种形式(1)内置式无线网卡:即将网卡芯片与主板集成在一起,如手机、笔记本电脑等;(2)外置式无线网卡:利用USB接口外接USB无线网卡。这两种方式各有优势,本文主要研究外置式无线网卡的实际应用。
2 无线网卡驱动程序的配置与移植
2.1 无线网卡的选择
从技术角度看,无线网卡的选择要注意以下几点:
(1)支持802.11b/g/n无线传输协议。
(2)采用主流厂商的无线网卡芯片.
(3)具备外置增益天线。
根据以上要求,本论文中选用了磊科的NW335型号的无线网卡来进行测试操作。
2.2软硬件平台
硬件平台:S3c6410
软件平台:linux2.36.2
交叉编译工具:arm-linux-gcc 4.3.2
2.3 NW335驱动程序的移植
不同厂商,不同型号的无线网卡的驱动程序不尽相同。因此,对于无线网卡驱动程序的移植就必不可少了。下面开始介绍对该款网卡的驱动程序移植到嵌入式linux操作系统的过程:
(1)登录realtek官网:http://www.realtek.com.tw/Default.aspx,获取驱动程序源代码,rtl8188C_8192C_usb_linux_v3.4.4_4749.20120730.tar.gz
(2)将驱动程序以共享文件夹的方式移动到ubuntu虚拟机中,然后解压缩,运行: tar xzvf rtl8188C_8192C_usb_linux_v3.4.4_4749.20120730.tar.gz
(3) 打开解压后的文件夹,如下图:
修改Makefile,运行gedit Makefie,打开文件,将原来的代码
CONFIG_PLATFORM_ANDROID_X86=y
CONFIG_PLATFORM_ARM_S3C6K4 =n
改为:
CONFIG_PLATFORM_ANDROID_X86=n
CONFIG_PLATFORM_ARM_S3C6K4 =y
执行make命令,会生成一个.ko文件,这里生成一个8188cu.ko文件。即是我们生成的linux下无线网卡的驱动程序。将该文件复制到开发板存储器中,执行:insmod /8188cu.ko 即可加载该网卡的驱动程序。
3 安全认证与加密
对于无线网络来说,由于信号不是在密闭的线路中传输,其安全性是必须要考虑的因素,数据传输过程中的协议与加密算法是非常重要的。目前主要的加密算法有两种(1) WEP安全加密方式(2) WPA安全加密方式,其中wpa加密方式是目前最安全的加密技术,其配置过程如下:
一、下载并解压缩源码
登录 http://hostap.epitest.fi/wpa_supplicant/,下载wpa_supplicant-0.7.3.tar.gz (openssl用到0.7.3提供的补丁),并进行解压缩:
#tar xvfz wpa_supplicant-0.7.3.tar.gz
下载www.openssl.org/source/openssl-0.9.8e.tar.gz,并进行解压缩
#tar zxvf openssl-0.9.8e.tar.gz
二、编译openssl库
将wpa_supplicant中的补丁拷贝到openssl中 ,修改配置文件,如下图所示:
三、编译wpa_supplicant ,修改配置文件后进行编译,如下图所示:
经过编译后的wpa_supplicant源程序可以看到两个主要的可执行工具:wpa_supplicant和wpa_cli。 wpa_supplicant是核心程序,它和wpa_cli的关系就是服务和客户端的关系:后台运行wpa_supplicant,使用wpa_cli 来搜索、设置、和连接网络。
四、配置wpa_supplicant工具
修改wpa_supplicant.conf配置文件,其内容如下:
wpa_supplicant -B -i wlan0 -c /mnt/disk/home/wireless/wpa_supplicant.conf
4 保证不断网的方案
因为各种各样的原因,网络有可能会连接不成功。如网络设备故障,断电,设备自身重启,软件硬件故障等。为了保证网络连接的稳定性,需要制定的联网策略,对断网情况进行修复处理。
1.启动时进行网络检测,若不能通过便重新启动,代码如下:
2.在运行期间每隔一段时间检测网络,若不成功便重新连接网络:
5 结论
通过对磊科NW335无线网卡的移植,可以实现带有USB接口的LINUX设备的联网,实用效果比较理想。在具备网络连接检测软件运行的情况下,设备可以实现不间断的网络通信。
参考文献
[1] 李俊.嵌入式Linux设备驱动开发详解[M].北京:人民邮电出版社,2008.126-167
[2] 宋宝华.Linux设备驱动开发详解[M].北京:人民邮电出版社,2008.477-528
[3] 刘淼.嵌入式系统接口设计与Linux驱动程序开发[M].北京:航空航天大学出版社,2006.205-234
[4] 华清远见嵌入式培训中心linux设备驱动开发详解 [M]北京:人民邮电出版社2007
[5] 赵建领 51单片机开发与应用[M] 电子工业出版社 2010
[6] 李朱峰 linux2.6嵌入式系统开发与实践 北京航空航天大学出版社 2010
关键词:NW335;嵌入式Linux移植;WPA
1 背景
当今的物联网时代,移动终端设备的通信得到广泛的应用。各种设备相继接入无线网络,从而实现更灵活、更方便快速的网络通信。
无线网卡模块是实现无线网络通信的硬件条件,目前来看主要有两种形式(1)内置式无线网卡:即将网卡芯片与主板集成在一起,如手机、笔记本电脑等;(2)外置式无线网卡:利用USB接口外接USB无线网卡。这两种方式各有优势,本文主要研究外置式无线网卡的实际应用。
2 无线网卡驱动程序的配置与移植
2.1 无线网卡的选择
从技术角度看,无线网卡的选择要注意以下几点:
(1)支持802.11b/g/n无线传输协议。
(2)采用主流厂商的无线网卡芯片.
(3)具备外置增益天线。
根据以上要求,本论文中选用了磊科的NW335型号的无线网卡来进行测试操作。
2.2软硬件平台
硬件平台:S3c6410
软件平台:linux2.36.2
交叉编译工具:arm-linux-gcc 4.3.2
2.3 NW335驱动程序的移植
不同厂商,不同型号的无线网卡的驱动程序不尽相同。因此,对于无线网卡驱动程序的移植就必不可少了。下面开始介绍对该款网卡的驱动程序移植到嵌入式linux操作系统的过程:
(1)登录realtek官网:http://www.realtek.com.tw/Default.aspx,获取驱动程序源代码,rtl8188C_8192C_usb_linux_v3.4.4_4749.20120730.tar.gz
(2)将驱动程序以共享文件夹的方式移动到ubuntu虚拟机中,然后解压缩,运行: tar xzvf rtl8188C_8192C_usb_linux_v3.4.4_4749.20120730.tar.gz
(3) 打开解压后的文件夹,如下图:
修改Makefile,运行gedit Makefie,打开文件,将原来的代码
CONFIG_PLATFORM_ANDROID_X86=y
CONFIG_PLATFORM_ARM_S3C6K4 =n
改为:
CONFIG_PLATFORM_ANDROID_X86=n
CONFIG_PLATFORM_ARM_S3C6K4 =y
执行make命令,会生成一个.ko文件,这里生成一个8188cu.ko文件。即是我们生成的linux下无线网卡的驱动程序。将该文件复制到开发板存储器中,执行:insmod /8188cu.ko 即可加载该网卡的驱动程序。
3 安全认证与加密
对于无线网络来说,由于信号不是在密闭的线路中传输,其安全性是必须要考虑的因素,数据传输过程中的协议与加密算法是非常重要的。目前主要的加密算法有两种(1) WEP安全加密方式(2) WPA安全加密方式,其中wpa加密方式是目前最安全的加密技术,其配置过程如下:
一、下载并解压缩源码
登录 http://hostap.epitest.fi/wpa_supplicant/,下载wpa_supplicant-0.7.3.tar.gz (openssl用到0.7.3提供的补丁),并进行解压缩:
#tar xvfz wpa_supplicant-0.7.3.tar.gz
下载www.openssl.org/source/openssl-0.9.8e.tar.gz,并进行解压缩
#tar zxvf openssl-0.9.8e.tar.gz
二、编译openssl库
将wpa_supplicant中的补丁拷贝到openssl中 ,修改配置文件,如下图所示:
三、编译wpa_supplicant ,修改配置文件后进行编译,如下图所示:
经过编译后的wpa_supplicant源程序可以看到两个主要的可执行工具:wpa_supplicant和wpa_cli。 wpa_supplicant是核心程序,它和wpa_cli的关系就是服务和客户端的关系:后台运行wpa_supplicant,使用wpa_cli 来搜索、设置、和连接网络。
四、配置wpa_supplicant工具
修改wpa_supplicant.conf配置文件,其内容如下:
wpa_supplicant -B -i wlan0 -c /mnt/disk/home/wireless/wpa_supplicant.conf
4 保证不断网的方案
因为各种各样的原因,网络有可能会连接不成功。如网络设备故障,断电,设备自身重启,软件硬件故障等。为了保证网络连接的稳定性,需要制定的联网策略,对断网情况进行修复处理。
1.启动时进行网络检测,若不能通过便重新启动,代码如下:
2.在运行期间每隔一段时间检测网络,若不成功便重新连接网络:
5 结论
通过对磊科NW335无线网卡的移植,可以实现带有USB接口的LINUX设备的联网,实用效果比较理想。在具备网络连接检测软件运行的情况下,设备可以实现不间断的网络通信。
参考文献
[1] 李俊.嵌入式Linux设备驱动开发详解[M].北京:人民邮电出版社,2008.126-167
[2] 宋宝华.Linux设备驱动开发详解[M].北京:人民邮电出版社,2008.477-528
[3] 刘淼.嵌入式系统接口设计与Linux驱动程序开发[M].北京:航空航天大学出版社,2006.205-234
[4] 华清远见嵌入式培训中心linux设备驱动开发详解 [M]北京:人民邮电出版社2007
[5] 赵建领 51单片机开发与应用[M] 电子工业出版社 2010
[6] 李朱峰 linux2.6嵌入式系统开发与实践 北京航空航天大学出版社 2010