嵌入式无线局域网设备的设计与实现
时间:09-03
来源:互联网
点击:
4软件系统设计
软件系统主要包括操作系统、TCP/IP协议的移植、驱动程序的安装以及用户应用程序的编写等。
S3C2410X集成了内存管理单元,因而可以实现嵌入式操作系统中更多的功能。在本文中采用Linux作为嵌入式操作系统。
Linux是从UNIX 发展而来,继承了UNIX大多数的优点且弥补其不适合在PC机上运行的缺点,Linux公开的内核源代码使得它成为目前最流行的操作系统。
Linux是真正的多用户、多任务、多平台操作系统,可运行于许多硬件平台,具有内置安全措施的分层的文件系统,支持多达32种文件系统,支持大量的外部设备。
定制操作系统的步骤如下:(1)编写板基支持包BSP;(2)裁剪和配置操作系统的各个部件,并修改相应的配置文件;(3)编译Kernel、组件和BSP,生成操作系统镜像文件;(4)将镜像文件下载到目标板上,进行调试。
将操作系统下载到目标板上有如下几种方法:通过BDM或JTAG接口下载、USB下载、网络接口下载和串口下载等。后面几种方法都要先通过JTAG接口将相应的监控程序下载到Flash中,然后CPU从Flash启动。
要在操作系统支持下实现TCP/IP协议,就需要进行任务划分,可以将TCP/IP的实现划分为4个任务来实现:①IP任务,主要用来解决IP分片的重组;②TCP输入任务,主要用来处理接收到的TCP报文段;③TCP输出任务,主要用来将要输出的数据打包、发送;④TCP定时器任务,主要用来为各种时延事件(如重发事件)提供时钟。它们之间的关系可用图3来表示。

图3任务关系
USB驱动程序设计采用WDM(Winddows Drive Mode)。WDM设备驱动程序提供了一个参考框架,大大降低了由DDK书写驱动程序带来的难度。
USB驱动程序包含如下几个部分:
(1)创建设备
创建设备函数带两个参数调用,一个参数是指向驱动程序对象的指针,另一个参数是指向物理设备对象的指针。
(2)关闭设备
(3)读取设备数据
当客户应
用程序有读取设备数据的要求时,系统将此要求以IRP_MJ_READ的IRP形式传递给功能驱动程序,由设备的D12Meter_Read程序执行,然后再由D12Meter_Read指定USB总线驱动程序直接与设备实现信息交互。
(4)对设备写入数据
当客户应用程序有写设备数据的要求时,系统将此要求以IRP_MJ_WRITE的IRP形式传递给功能驱动程序,并由D12Meter_Write执行,然后再由D12Meter_Write指定USB总线驱动程序直接与设备实现信息交互。
USB驱动程序通过安装文件(.inf文件)中PID(产品识别号)和VID(厂商识别号)识别USB设备。
一旦操作系统装载完成后,就可以安装无线网卡的驱动程序和其他相应的应用程序。将无线网卡的驱动程序作为一个模块打包到操作系统中,可避免系统掉电后每次都要重装无线网卡驱动程序。
用户应用程序要针对具体的应用情况而定,一般都用C语言编写。
5总结
嵌入式无线局域网设备可以用于有线网络无法延伸或难以安装、有可灵活移动和临时性使用等要求的场合。可以数据的采集和无线传输、可以用于嵌入式手持移动终端、可以用来构建家庭无线局域网,若加摄像头和图象处理芯片,还可以用于工业现场中的远程无线视频监控。
参考文献
1S3C2410X 32-Bit RISC Microprocessor USER'S MANUAL Revision 1.2
2贺科峰 李式巨 S3C2410在无线宽带通信网中的应用 电子技术应用 2004.5:50~52
3杜春雷编著 ARM体系结构与编程 清华大学出版社 2004.4
4王田苗主编 嵌入式系统设计与实例开发 清华大学出版社 2003
5唐演编著 实时操作系统应用开发指南 中国电力出版社 2002.6
6萧世文编著 USB2.0硬件设计 清华大学出版社2002
7 TCP/IP协议族(第二版)Behrouz A.Forouzan,Sophia Chung Fegan 著 谢希仁译 清华大学出版社 2003
软件系统主要包括操作系统、TCP/IP协议的移植、驱动程序的安装以及用户应用程序的编写等。
S3C2410X集成了内存管理单元,因而可以实现嵌入式操作系统中更多的功能。在本文中采用Linux作为嵌入式操作系统。
Linux是从UNIX 发展而来,继承了UNIX大多数的优点且弥补其不适合在PC机上运行的缺点,Linux公开的内核源代码使得它成为目前最流行的操作系统。
Linux是真正的多用户、多任务、多平台操作系统,可运行于许多硬件平台,具有内置安全措施的分层的文件系统,支持多达32种文件系统,支持大量的外部设备。
定制操作系统的步骤如下:(1)编写板基支持包BSP;(2)裁剪和配置操作系统的各个部件,并修改相应的配置文件;(3)编译Kernel、组件和BSP,生成操作系统镜像文件;(4)将镜像文件下载到目标板上,进行调试。
将操作系统下载到目标板上有如下几种方法:通过BDM或JTAG接口下载、USB下载、网络接口下载和串口下载等。后面几种方法都要先通过JTAG接口将相应的监控程序下载到Flash中,然后CPU从Flash启动。
要在操作系统支持下实现TCP/IP协议,就需要进行任务划分,可以将TCP/IP的实现划分为4个任务来实现:①IP任务,主要用来解决IP分片的重组;②TCP输入任务,主要用来处理接收到的TCP报文段;③TCP输出任务,主要用来将要输出的数据打包、发送;④TCP定时器任务,主要用来为各种时延事件(如重发事件)提供时钟。它们之间的关系可用图3来表示。

图3任务关系
USB驱动程序设计采用WDM(Winddows Drive Mode)。WDM设备驱动程序提供了一个参考框架,大大降低了由DDK书写驱动程序带来的难度。
USB驱动程序包含如下几个部分:
(1)创建设备
创建设备函数带两个参数调用,一个参数是指向驱动程序对象的指针,另一个参数是指向物理设备对象的指针。
(2)关闭设备
(3)读取设备数据
当客户应
用程序有读取设备数据的要求时,系统将此要求以IRP_MJ_READ的IRP形式传递给功能驱动程序,由设备的D12Meter_Read程序执行,然后再由D12Meter_Read指定USB总线驱动程序直接与设备实现信息交互。
(4)对设备写入数据
当客户应用程序有写设备数据的要求时,系统将此要求以IRP_MJ_WRITE的IRP形式传递给功能驱动程序,并由D12Meter_Write执行,然后再由D12Meter_Write指定USB总线驱动程序直接与设备实现信息交互。
USB驱动程序通过安装文件(.inf文件)中PID(产品识别号)和VID(厂商识别号)识别USB设备。
一旦操作系统装载完成后,就可以安装无线网卡的驱动程序和其他相应的应用程序。将无线网卡的驱动程序作为一个模块打包到操作系统中,可避免系统掉电后每次都要重装无线网卡驱动程序。
用户应用程序要针对具体的应用情况而定,一般都用C语言编写。
5总结
嵌入式无线局域网设备可以用于有线网络无法延伸或难以安装、有可灵活移动和临时性使用等要求的场合。可以数据的采集和无线传输、可以用于嵌入式手持移动终端、可以用来构建家庭无线局域网,若加摄像头和图象处理芯片,还可以用于工业现场中的远程无线视频监控。
参考文献
1S3C2410X 32-Bit RISC Microprocessor USER'S MANUAL Revision 1.2
2贺科峰 李式巨 S3C2410在无线宽带通信网中的应用 电子技术应用 2004.5:50~52
3杜春雷编著 ARM体系结构与编程 清华大学出版社 2004.4
4王田苗主编 嵌入式系统设计与实例开发 清华大学出版社 2003
5唐演编著 实时操作系统应用开发指南 中国电力出版社 2002.6
6萧世文编著 USB2.0硬件设计 清华大学出版社2002
7 TCP/IP协议族(第二版)Behrouz A.Forouzan,Sophia Chung Fegan 著 谢希仁译 清华大学出版社 2003
嵌入式 单片机 VxWorks Linux 射频 红外 机顶盒 S3C2410 ARM 总线 LCD PWM ADC 触摸屏 USB C语言 视频监控 电子 相关文章:
- 蓝牙无线电调制解调器Siw1701原理与应用(02-19)
- 嵌入式移动数据库的关键技术(03-20)
- 在嵌入式SQL中怎样使用游标(08-12)
- 嵌入式Linux系统软件开发学习思路详细介绍 (08-20)
- 基于AVR单片机的嵌入式“瘦服务器”系统设计思想(03-11)
- 嵌入式系统设计中的存储碎片收集策略(05-04)
