27
2011年8月刊 软件开发与设计信息与电脑 China Computer&Communication
引言
现在嵌入式系统在性能上有了很大提升,嵌入式系统实现与网络
的互联是其性能提升的一种必然发展趋势。由于嵌入式设备便携的特
性,采用无线方式联网成为实现网络连接的一种自然选择。
Linux作为嵌入式操作系统的后起之秀,成为众多嵌入式系统的
首选操作系统。而Wi-Fi是当前应用最广泛的无线通信
标准
excel标准偏差excel标准偏差函数exl标准差函数国标检验抽样标准表免费下载红头文件格式标准下载
之一。因
此,对于基于嵌入式Linux的Wi-Fi系统的研究具有较重要的意义。
1. Wi-Fi与嵌入式Linux
目前带有Wi-Fi的嵌入式系统多是专用Wi-Fi系统。专用系统中
Wi-Fi的硬件和软件都是专有设计,不能通用。显然这样的系统不能
促进Wi-Fi在嵌入式系统中的广泛应用。出现这种情况的原因,一是
硬件接口标准不统一;二是操作系统种类较多。虽然现在还不能完全
解决上述问题,但是研究嵌入式Linux中Wi-Fi实现的一般方法,对于
Wi-Fi在嵌入式系统中的普及应用具有一定价值。
嵌入式系统中Wi-Fi的实现涉及无线网络适配器、与适配器对应
的驱动程序以及无线扩展三个部分。下面从这三部分分析在嵌入式
Linux中实现Wi-Fi系统所需做的工作。
1.1 无线网络适配器
无线网络适配器是嵌入式系统与网络连接的接口。选择无线网
络适配器时,首先要考虑的就是适配器与系统的硬件接口。适用于嵌
入式系统的适配器硬件接口形式有PCMCIA、CompactFlash以及USB
等。根据系统自身的接口情况,选择合适的无线网络适配器硬件接口
是实现Wi-Fi系统的第一步工作。
1.2 驱动程序
驱动程序是操作系统和硬件设备的接口,它是无线网络适配器工
作的基础。目前很多无线网络适配器生产厂商不提供Linux的驱动程
序,更不要说对嵌入式Linux的支持了。所以,在确定了适配器的硬
件接口以后,选择一个能满足嵌入式Linux驱动的无线网络适配器是
至关重要的一步。
虽然适配器生产厂商不提供Linux的驱动程序,还是可以为很多
适配器找到驱动程序。通常可以找到适配器所用芯片的Linux驱动程
序,一般可以在这个驱动程序的基础上做适当的改动来满足嵌入式
Linux系统。当然也可以自己开发适配器的嵌入式Linux驱动,但是这
样做难度较大,而且在厂商不公布硬件规范的时候是无法实现驱动
的。
1.3 无线扩展
Linux系统中,是通过无线扩展(Wireless Extensions)进行Wi-Fi系
统操作的。用无线扩展可进行无线网络的参数设置以及网络信息统计
等工作。无线扩展是分三部分实现的,第一部分是用户接口,它是一
组操作那些扩展的工具;第二部分是对Linux内核的修改,以支持和
定义这些扩展;第三部分是硬件接口,它是在每个网络驱动程序中实
现的,把扩展映射为真实的硬件操作。
无线扩展的优点在于,单一的一组工具就可以支持所有种类的
无线网络适配器,不管它们的类型如何(只要硬件驱动程序支持无线
扩展)。无线扩展的用户接口非常简单,在 Linux 实现中使用的主要
有:
iwconfi g:操作基本的无线参数。
iwlist:初始化扫描频率、列
表
关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf
频率、比特率和密钥。
iwspy:获得每个节点的连接质量。
iwpriv:允许针对特定于Wi-Fi驱动程序的无线扩展进行操作。
2. Wi-Fi系统的实现
本文在一款基于嵌入式Linux的手持阅读器上实现了Wi-Fi系统。
2.1 硬件平台
选用S3C2410处理器作为系统硬件核心,采用USB接口的无线
网络适配器来实现Wi-Fi系统,选用TP-LINK公司生产的TL-WN321G
无线网络适配器。TL-WN321G使用的芯片是Ralink公司生产的
RT2501USB芯片组,它由发射接收芯片RT2528和MAC/基带处理器
RT2571W组成。
2.2 软件实现
本文的手持阅读器的软件包括引导和驱动程序、Linux内核、用
户接口程序和应用程序,与Wi-Fi系统实现有关的是驱动程序和Linux
内核。
前面已经提到,在嵌入式Linux中实现Wi-Fi系统,需要有驱动程
序和无线扩展,它们和Linux内核一起,组成Wi-Fi系统的软件部分。
这里的内核使用的是Linux2.6.11版本,内核中有对无线扩展的支持,
在编译内核时候,只需将CONFIG_NET_RADIO选项设置为y即可。
可在无线扩展的网站下载无线扩展用户接口的源码[4],然后进行交叉
编译,下载到手持阅读器中使用。
Wi-Fi系统软件实现的关键是驱动程序。TP-LINK公司不提供对
TL-WN321G的Linux支持,所以需要自己解决驱动程序的问题。通
过TL-WN321G使用的芯片信息,可以在Ralink公司的网站找到相应
基于嵌入式Linux的Wi-Fi系统的研究与实现
田志刚
(国家知识产权局专利局 电学发明审查部计算机二处,北京100088)
摘 要:嵌入式系统实现与网络的互联是其发展的一个趋势。本文分析了在嵌入式Linux中实现Wi-Fi系统所需做的工作,并在一款手持阅读器
上实现了Wi-Fi系统。本文对于实现基于嵌入式Linux的Wi-Fi系统具有一定的指导意义。
关键词:嵌入式系统 ;Wi-Fi;无线通信; 嵌入式Linux
中图分类号:TP393 文献标识码:A 文章编号:1003-9767(2011)08-0027-02
(下转第29页)
29
2011年8月刊 软件开发与设计信息与电脑 China Computer&Communication
而达到拥有不同权限的目的。
如发布信息的原码为:
< ? $ r e s u l t = m y s q l _ q u e r y ( " s e l e c t * f r o m u s e r s w h e r e
username='$username' ");
while ($row=mysql_fetch_array($result)){
$admin=$row["admin"];
if ($admin<1){?>
此版区仅供教师使用, 你没有权限,
返回
(2)资源上传的实现
用户选择了上传软件和
课件
超市陈列培训课件免费下载搭石ppt课件免费下载公安保密教育课件下载病媒生物防治课件 可下载高中数学必修四课件打包下载
的路径,而上传软件到服务器的PHP
程序在这个表单提交的页面中。
原码为:
if($kejian! ="none" )
{$type=explode(".",$kejian_name);
$kejianname=time().".".$type[1];
copy($kejian,"kejian/$kejianname"); ?>
if语句首先判断在表单里变量是否为空,假如不为空则利用
explode 函数来获得上传软件或课件的后缀名。
8. 交流区的实现
交流区模块主要是通过PHP和MySQL对数据库中bbs表的读取、
插入、删除和修改这几个方面进行操作。
读取并写出数据内容:
$result=mysql_query ("select * from bbs where id=' $id'and
subbbs=0 ");
while ($row=mysql_fetch_array($result)){
echo $row["writer"];}?>
插入数据库数据: $ip=$REMOTE_ADDR
mysql_query ("insert into bbs(title,writer,softname,content,datetime,p
hoto,ip,type,class)
values(' $sftitle' ,' $username' ,' $softname' ,' $content' ,now(),' $photo'
,' $ip' ,' $type ' ,' $ class ' )");
删除数据库数据: mysql_query ("delete from bbs where id='$id' ");
修改数据库数据: mysql_query ("update bbs set softcheck=1 where
id=' $id' ");
9. 结论
计算机网络课在线教学系统是一个开放的、互动的远程教学平
台。该远程教学网站网络在教学应用中的具体体现,丰富了教学形
式,给学生更灵活的学习方式。在以后的教学过程中还将不断的修
改、完善和扩展,使它更好地为课堂教学服务。
参考文献:
[1] Larry.Ullman著[美].陈宗斌译.PHP与MySQL基础教程[M]
.北京:人民邮电出版社,2007第二版:430—450
[2]杨开城.以学习活动为中心的教学设计理论——教学设计理论
新探索[M].北京:电子工业出版社.2005.1
[3] 刘静.基于活动理论的在线学习活动设计——《数据结构》课
程在线学习活动的设计与实践(硕士
论文
政研论文下载论文大学下载论文大学下载关于长拳的论文浙大论文封面下载
)
的Linux驱动程序。在交叉编译驱动程序时,修改Makefile中的相关
信息,使编译器指向设置好的交叉编译器,内核指向设置好的内核
源码。该驱动程序在编译下载到手持阅读器后不能正常使用,这是
因为它对arm平台的支持存在一些问题,需要对其做一些改动。修改
rtmp_info.c、rtmp_init.c、rtmp_main.c、rtusb_data.c几个源文件,主要
是对abs函数的修改以及对DMA的支持。
通过无线扩展提供的命令,可以容易的配置无线网络。使用
iwconfig命令,可以看到无线网络适配器的一些相关信息。使用
ifconfi g命令激活适配器后,可以用iwlist命令的scan选项来搜索无线网
路,可以看到搜索到的无线网络的相关信息。使用iwconfig设置适配
器的essid,使其与无线网络的essid相同。最后用ifconfi g配置适配器的
IP地址和网络掩码。一切设置妥当后,使用ping命令,可以测试网络
是否连同。
3. 系统性能测试
ping通网络后,可以进行Wi-Fi系统性能测试。Wi-Fi系统性能主
要是传输性能,这个性能对于网络的构成和传输起了根本的作用。手
持阅读器运行FTP客户端,PC机安装FTP服务器。
在与无线接入点之间没有障碍物的情况下, 手持阅读器在不同
距离的采样点从FTP服务器下载文件。用文件的大小除以下载该文件
所用的时间,得到Wi-Fi网络的传输速率。在每个采样点要重复测量
取平均值。经测试,该Wi-Fi系统的传输速率大体稳定在4.5Mbps上
下,能够较好地进行数据传输。
4. 结束语
本文分析了嵌入式Linux中实现Wi-Fi系统的一般方法,指出了其中
需要注意的问题。在一款基于嵌入式Linux的手持阅读器上,使用USB
接口的无线网络适配器实现了Wi-Fi系统。经过测试,系统传输性能良
好,可以满足手持阅读器网络下载电子读物的要求。本文所述的方法
及实现对于在嵌入式Linux中实现Wi-Fi系统有一定的指导意义。
参考文献:
[1] 王海涛,汤平杨.Wi-Fi——安装、配置和使用802.11b无线网络
[M]. 北京:清华大学出版社,2003.
[2] 钱进.无线局域网技术与应用[M].北京:电子工业出版社,2004.
[3] RT5201U Product Brief. http://www.ralinktech.com/ralink/Home/
Products/Interfaces/USB.html.
[4] wireless_tools. http://www.hpl.hp.com/personal/Jean_Tourrilhes/
Linux/Tools.html.
[5] RT73_Linux_STA_Drv1.0.3.6.tar.gz. http://www.ralinktech.com/
ralink/Home/Support/Linux.html. 2006.
[6] Karim Yaghmour.Building Embedded Linux Systems[M].北京:
O'Reilly,2003.
[7] 魏永明,耿岳,钟
书
关于书的成语关于读书的排比句社区图书漂流公约怎么写关于读书的小报汉书pdf
毅.Linux设备驱动程序[M]. 北京:中国电力出
版社,2006.
作者简介:田志刚(1977.2-),男,吉林人,现职称:主任科
员,学历:硕士,研究方向:嵌入式系统
(上接第27页)