首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

基于嵌入式系统的无线接入网硬件设计 03

基于嵌入式系统的无线接入网硬件设计 03

由以上得到的内核由于没有对设备的支持,所以没有什么实际意义上的用途,因此为了满足我们的需要,就必须添加必要的驱动程序。uClinux支持三类的硬件设备:字符设备,块设备和网络设备。每一类设备驱动程序都提供了通用的接口供内核在需要请求它们服务的时候使用。这些通用的接口意味着内核可以完全相同的看待通常是非常不同的设备和它们的设备驱动程序。字符设备直接读写,没有缓冲区,系统中的串行端口/dev/ttys0和/dev/ttys1都属于字符设备;快设备只能按照一个块(一般是512字节或者是1024字节)的倍数进行读写。块设备通过buffer cache访问,可以随机存储,即任何块都能够随机存储,而不用考虑它在设备的什么地方,块设备可以通过他们的特殊设备文件访问,但一般是通过文件系统访问;网络设备通过BSDsocket接口访问。在本系统中,主要添加的驱动程序包括:串口驱动,用来打印调试信息;以太网络驱动,usb主接口驱动和 usb无线网卡的驱动程序。值得一提的是虽然usb设备从底层上来说是属于字符设备,但在uClinux 2.4内核中,对usb设备已经单独列出,因此usb主接口和无线网卡则按照usb设备加入;串口和以太网则分别按照字符设备和网络设备加入。添加驱动程序是一个非常复杂的过程,但是由于uClinux是开源的,所以总是能找到一些与之相关的程序来参考。具体的加入方法,这里不再赘述。至此,基于本系统的 uClinux移植完成。
2.3  应用软件实现
对于本系统,应用程序主要是完成数据的无线传输,在系统控制中,利用接收中断来接收数据,同时在SDRAM中开辟两个缓冲区用以存放接收到的数据,并用一个全局变量纪录采集到的样点个数。当采样个数符合要求后,程序便进入数据处理程序,对数据进行处理,这里的处理主要是将数据处理成符合 802.11b标准的数据报文。同时将缓冲区指针指向另一缓冲区继续接收数据,这样可以实现数据接收和数据处理的并行操作,处理完的数据经usb接口发送到无线网卡。
3       结论
基于对ARM微处理器的研究,针对嵌入式系统uClinux的开发特点,开发了一套基于嵌入式系统uClinux的无线接入平台。该平台充分利用了 arm微处理器的特点,扩展了嵌入式系统应用范围,实现了无线局域网的传输。在室内环境下,我们将PC机上无线网卡的IP和该平台的IP设在同一个网段内,并且使该平台和PC间的距离在15m左右,实验结果表明,两者间的数据传输速率可以达到307KB/s,误码率为0.1%,当将两者间的距离增至 25m左右时,数据传输速率可以达到196KB/s,误码率也有所上升。从实验的结果来看,该平台满足了设计的要求,达到了预期的效果。极大的扩展了嵌入式系统在无线领域的应用。
4       结束语
本文针对当前嵌入式internet的应用都是集中于以太网络而提出的基于ARM平台的嵌入式无线网设计,对主要接口电路原理和实现做了论述,并给出了将嵌入式操作系统uClinux移植到arm平台上的方法以及具体实现时应注意的问题。随着嵌入式技术的应用和无线网络的发展和壮大,嵌入式的无线网络将会有更大的发展空间。
返回列表