0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于S3C2410处理器实现USB网卡无线网络功能的实现

电子设计 来源:电子技术 作者:吴永康,张东,杨 2021-05-05 17:04 次阅读

作者:吴永康,张东,杨承照

目前,嵌入式技术已广泛应用于工业控制、消费类电子产品通信系统等各类市场产品。并且随着互联网的日益发达,具有无线接入功能的嵌入式系统更加具有发展前景。本文将介绍支持IEEE 802.11g协议的54M USB无线网卡在嵌入式系统上的应用,嵌入式系统使用了ARM9系列的S3C2410处理器

1 系统硬件体系结构

1.1 系统结构

系统总体结构如图1所示。

系统核心芯片采用三星公司的S3C2410处理器,该处理器是三星公司的一款基于 ARM920T内核的16/32位RISC嵌入式微处理器,主要面向手持设备以及高性价比,低功耗的应用,运行的频率可以达到203MHz。该处理器集成了很多重要的功能模块,并且支持多种总线。处理器集成了USB HOST控制器,并支持两个USB HOST通讯端口

系统使用64M NAND FLASH作为仔储器,存储了系统软件部分必需的BOOTLOADER、LINUXKERNEL、FILESYSTEM。系统中的串口、 USBDEVICE接口、JTAG接口主要在开发调试时使用。系统通过TOUCH&LCD进行人机信息交换,满足广大消费类电子产品的需求。

无线网卡是这个移动终端的关键设备,鉴于市面上大部分的llM无线网卡已经停产或者即将停产,以及社会对具有更高网络接入性能的嵌入式设备的需求,我们选择芯片组型号为rt2573的54M无线网卡。由于S3C2410处理器已经集成了USB HOST控制器,所以不需要附加额外的芯片,网卡可以直接通过USBHOST PORT接入,非常方便。

1.2 USB主机接口的硬件实现

在USB系统中,各种USB设备要与主机相连,就必须通过一个共同的接口接入丰机。这个接口就是USB丰机控制器(USB Host Controller)。USB总线协议定义了四条信号线,其中两条信号线负责供电,而另外两条信号线负责数据的传输。USB通信模型是一种Host- Slave(主机——外设)主从式结构,因此经由USB总线进行通信的双方必有一方在通信控制中担当主机(HOST)的角色。

USB接口可从主机上获得500mA的电流,并且支持热插拔,真正做到即插即用。一个USB接口可同时支持高速和低速USB外设的访问,有一条4芯电缆连接,其中2条是正负电源,传送的是5V的电源,2条是数据传输线,数据线是单工的,在整个的一个系统中的数据速率是一定的,或者是高速,或者是低速。

S3C2410处理器内部集成了USB HOST控制器,可以直接从CPU引线出来,而不需要添加额外的控制芯片,图2为系统的USB HOST接口扩展。S3C2410处理器可以支持两个USB HOST通信端口。

2 USB网卡无线网络功能的实现

2.1 无线网卡的软件管理层实现

嵌入式系统硬件部分建立好后,需要建立软件系统。本系统中采用了vivi做为BOOTLOADER(引导启动程序),嵌入式Linux作为操作系统,以Cramfs作为主文件系统,为支持可读写功能还添加了Jffs2文件系统。 接着,需要软件上实现无线网卡的功能。

无线网卡的软件包括无线网卡固件(Firmware)、无线网卡驱动程序(Driver)和无线网卡配置管理程序三部分。

无线网卡的软件实现结构图如图3所示。固件是无线网卡上最基本的控制系统,主要基于MAC芯片来实现对整个网卡的控制和管理,并向下提供与物理层的接口,向上提供一个程序开发接口,为程序开发附加的移动主机应用程序提供支持。在嵌入式系统中,IEEE802.11提供的服务,包括认证、解除认证、登录、重登录等均由固件完成。

无线网卡的驱动程序使用固件提供的软件编程接口,对无线网卡进行控制,配合固件完成数据的收发以及对信息帧的处理。无线网卡驱动程序主要是针对相应的无线网卡芯片进行设计的,不同的芯片,它们的固件和寄存器相关设置存在很大的差异。除了要完成对下层的控制外,无线网卡驱动还要向上层应用程序和管理程序提供操作和配置无线网卡的应用程序编程接口,以实现其网络传输功能。

所有的Linux网络驱动程序遵循通用的接口。设计时采用的是面向对象的方法。一个设备就是一个对象(device结构),它内部有自己的数据和方法。每一个设备的方法被调用时的第一个参数都是这个设备对象本身,这样这个方法就可以存取自身的数据(类似面向对象程序设计时的this引用)。一个网络设备最基本的方法有初始化、发送和接收。如图4所示。

初始化程序完成硬件的初始化,device中变量的初始化和系统资源的申请,发送程序是在驱动程序的上层协议层有数据要发送时自动调用的。一般驱动程序中不对发送数据进行缓存,直接使用硬件的发送功能把数据发送出去。接收数据一般是通过硬件中断来通知的。在中断处理程序里,把硬件帧信息填入一个 skbuff结构中,然后调用 netif_rx()传递给上层处理。

本系统的无线网卡驱动接口主要实现了以下接口函数:

无线网卡配置管理程序利用驱动程序提供的信息查询和设置接口,向用户实时提供无线网卡的状态,同时利用该管理软什可以实现对IP、 SSID等无线刚卡参数进行必要的配置。常见的无线网卡配置管理程序有iwconfig、iwlistt、iwspy、iwpriv等。这里介绍几个主要的无线网卡配置管理程序:

·Iwconfig:主要的无线管理工具,用来查看设备配置以及大部分的无线刚络参数。

·Iwlish:用来查看大部分iwconfig工具不能显示的参数,如:比特率,频率等。

·Impriv:操作无线网卡驱动程序提供的特有的管理控制功能。

·Iwgetid:输出指定设备的ESSID或NWID。

2.2 无线网卡的配置和激活使用

要完成无线网卡的配置和激活使用,首先,应设置配置文件和编译驱动程序,生成无线网卡的固件和驱动程序模块。把固件和配置文什放到文件系统的/etc/Wireless/RT73STA/文件夹上。

Rt73sta.dat的主要配置如下:

·NetworkType=Infra/*由于选择AP接入模式,网络类型选择Infra*/

·SSID=TPLINK/* SSID/ESSID(Service SetIdentifier)是“服务区标识符匹配”、“业务组标识符”的简称,最多可以有32个字符。它就好比有线局域网中的“工作组”标识一样或好比是无线客户端与无线路由器之间的一道口令一样,只有在完仝相同的前提下才能让无线网卡访问无线路由器,这也是保证无线网络安全的重要措施之一。这里设置为你的AP 上的SSID就可以。*/

·WirelessMode=0/*数字0表示选择同时支持11b/g协议。*/

·TxRate=12/*数字12表示选择54M的传输速度。*/

除通过修改配置文件外,大部分的参数可以通过iwconfig工具直接设定。至此,可以通过ifconfig来启动无线网卡了。Ifconfig usb0 192.168.100.99 up。启动后可以通过ping命令查看网络连接状态。

详细介绍了实现基于S3C2410处理器的嵌入式Linux系统无线接入网络功能的扩展方法,对硬件和软件的实现进行了详细的描述。无线接入功能的实现使得嵌入式系统在网络应用高速发展的电子消费世界有着广阔的发展空间和应用前景。系统采用54MBPS无线网卡,大大增强了嵌入式系统网络接入能力,使其更具有竞争力。

责任编辑:gt

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 处理器
    +关注

    关注

    68

    文章

    18024

    浏览量

    221539
  • usb
    usb
    +关注

    关注

    59

    文章

    7377

    浏览量

    257472
  • 无线
    +关注

    关注

    31

    文章

    5292

    浏览量

    171294
收藏 人收藏

    评论

    相关推荐

    无线网卡的安装与无线网络的设置步骤讲解

    1从左至右分别是笔记本用PCMCIA 接口无线网卡、台式机PCI 接口无线网卡无线网桥和USB 接口无线网卡,各类
    的头像 发表于 11-21 09:21 1.7w次阅读
    <b class='flag-5'>无线网卡</b>的安装与<b class='flag-5'>无线网络</b>的设置步骤讲解

    无线网络如何破解密码

    。 第四步:接下来是选择无线网卡的类型,既然说了是与atheros相兼容的,所以直接输入“a”进行选择即可。 第五步:上面文章中提到了已经把无线网络的SSID广播功能取消了,这样我们假设还不知道该
    发表于 01-27 21:44

    细说无线上网卡无线网卡的区别

    都可以上网。无线上网卡的作用、功能相当于有线的调制解调,它可以用于无线电话信号覆盖的任何地方。   无线网卡配合
    发表于 06-23 13:37

    S3C2410处理器与Nand flash 的问题

    一个64M Nand flash存储S3C2410处理器的Nand flash相应接口连接,请问这个64M存储空间是否属于8个bank中的一个bank?因为有些书上说bank 0到bank 7
    发表于 11-20 21:41

    【7gyy】台式电脑使用无线网络的技巧

    实现台式电脑能无线上网,首先光靠台式电脑是不行的,因为需要实现XP系统下载的无线上网目前主要有2种方法,使用手机的3G
    发表于 03-10 08:50

    S3C2410处理器

    S3C2410处理器通过GPD端口连接LED1-4四个灯,试着画出其电路连接图,并变成实现其逐一点亮功能
    发表于 11-23 21:50

    无线网络

    ,与有线网络相比,显示出了自身的独特优势:1.使用过程中,不需要网线,摆脱了有线网络的空间限制,不用网线设备就可以应用网络;2.只要计算机在无线城域
    发表于 07-05 11:42

    基于ARM S3C2410处理器的PDA人机接口电路设计

    结束语   本文结合实际消费电子PDA的研究与开发要求,参照目前国内外PDA的各种功能和结合实际需要,选用三星公司的S3C2410处理器,结合PDA通用功能的需要,并考虑硬件扩展的方
    发表于 06-19 05:00

    如何去实现无线网络中的FEDCA算法?

    EDCA算法是什么?如何去实现无线网络中的FEDCA算法?怎样去验证FEDCA算法性能?
    发表于 05-24 06:31

    怎么实现CDMA无线网络防雷接地的设计?

    雷击CDMA无线网络的主要途径是什么?怎么实现CDMA无线网络防直接雷的接地设计?怎么实现CDMA无线网络防感应雷的接地设计?防雷设计中采取
    发表于 05-25 06:27

    USB无线网卡(EDUP)配置

    系统这里推荐一下热心的淘宝店家,店铺名是:深圳品行电脑网络科技服务态度很ok2.无线网卡WiFi功能实现1.插上无线网卡启动,直到WiFi模
    发表于 12-16 08:32

    无线网卡连接无线网络如何配置?

    无线网卡连接无线网络如何配置?
    发表于 12-27 07:32

    嵌入式宽带无线网络终端的实现

    本文介绍了在嵌入式Linux下实现PCMCIA 系统的方法,以及如何在此基础上实现对802.1lb无线网卡的支持,从而构建一个宽带无线网络终端。硬件平台采用三星公司的S3C
    发表于 12-11 16:18 15次下载

    无线网卡无线网络

    无线网卡无线网络 计算机网络在其几十年的发展历程中,技术始终在不断加速演进。而今,计算机网络尤其是Internet已经渗透
    发表于 08-01 11:15 1132次阅读

    基于S3C2410处理器实现3G无线网卡接入无线网络功能的设计

    本研究的目的是实现一个具有3G无线网络接入功能的嵌入式系统。系统的硬件平台是基于ARM系列的S3C2410处理器。文章简要介绍了该系统的体
    的头像 发表于 06-24 16:48 2250次阅读
    基于<b class='flag-5'>S3C2410</b><b class='flag-5'>处理器</b><b class='flag-5'>实现</b>3G<b class='flag-5'>无线网卡</b>接入<b class='flag-5'>无线网络</b><b class='flag-5'>功能</b>的设计