基于Vxworks操作系统的串口通信程序设计与实现.pdf





《基于Vxworks操作系统的串口通信程序设计与实现.pdf》由会员分享,可在线阅读,更多相关《基于Vxworks操作系统的串口通信程序设计与实现.pdf(5页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、 10文章编码1 0 0 5-3 8 4 0 2 0 0 7 0 3-0 0 0 3-0 4 基于 V x w o r k s 操作系统的串口通信程序设计与实现 刘亚芬 上海师范大学,上海 2 0 0 2 3 4 摘要结合嵌入式实时操作系统 V x W o r k s实现风洞测控系统的实际应用,以其中的串口通信为例讨论了在 V x W o r k s 下实现串口通信的关键技术给出了基本原理环境配置和程序示例 关键词V x W o r k s 实时操作系统 嵌入式操作系统串行通信 1 前言 目前市场上比较著名的实时操作系统有VxWorksPSOSNucleusQNXVRTXWindows CEP
2、alm 0SLynx0S 等 其中VxWorks 是一个具有微内核可裁剪的高性能强实时操作系统在实时操作系统市场上处于领先地位它以其良好的可靠性和卓越的实时性被广泛地应用在通信军事航空航天等高精尖技术及实时性要求极高的领域中如卫星通讯弹道制导飞机导航等在美国的 F-16 战斗机B-2 隐形轰炸机和爱国者导弹上 甚至火星探测器上都使用了 VxWorks 实时操作系统 在嵌入式实时操作系统中使用串口通信不仅可扩展嵌入式设备通信能力而且可扩大其应用范围 2 VxWorks 简介 VxWorks 是由 wRS(wind River SystemsInc)公司开发的一套具有微内核高性能可伸缩的实时操作系
3、统支持广泛的网络通信协议并能够根据用户的需求进行组合其开放式的结构和对工业标准的支持使开发者只需做最少的工作即可设计出有效的适合于不同用户要求的系统除了性能出众的操作系统之外wRS 公司还提供了优秀的实时操作系统开发工具 TornadoTornado 由三个高度集成的部分组成Tornado 工具一整套强有力的交叉开发工具VxWorks 运行系统是运行在目标机上的高性能可裁剪的实时操作系统连接目标机和宿主机的通信选项加以太网串行线路在线仿真等Tornado 能够支持 WindowsUnix 等流行的工作平台和 PowerPCX86ARM 等几乎所有的目标处理器所提供的工具可用于所有目标机并具有两
4、种调试模式(系统模式和任务模式)除了基本的功能和开发工具外Tornado 还具有先进的系列网络产品极大地扩展了 Tornado的网络特性并增强了嵌人式微处理器的网络特性1 3 串口通信基本原理 串口在嵌入式系统当中是一类重要的数据通信接口其本质功能是作为 CPU 和串行设备间的编码转换器当数据从 CPU 经过串行端口发送出去时字节数据转换为串行的位在接收数据时串行的位被转换为字节数据应用程序要使用串口进行通信必须在使用第8卷第2期 江右论坛 Vol.8 No.2 2007年5月 JIANGYOU FORUM May.2007 收稿日期2 0 0 7-0 5-2 万方数据 11之前向操作系统提出
5、资源申请要求(打开串口)通信完成后必须释放资源(关闭串口)串口通信的优点是开发简单在传输数据量不大要求速度不高而传输距离较大的通信场合得到广泛应用 在 VxWorks 中将 I/O 系统设计成为任何类型的设备提供一个简单统一独立于设备的接口任何对于串口的操作都可以视为对一个文件的操作而不必了解串口设备或程序驱动实现的细节在串口通信软件的设计中当串口初始化完成后在使用之前利用open()打开相应串口然后进行配置 VxWorks 提供终端和伪终端设备驱动 Tty 驱动针对实终端 pty 针对仿真终端的程序Tty 设备有两种操作模式raw 模式和 line 模式在 raw 模式下每个刚从设备输入的字
6、符对读者都是有效的在 line 模式下所有输入字符被存储直到 NEWLINE 字符输入设备选项字使用带 FIOSETOPTIONS 功能的 ioctl()程序来设置2 配置完成后依据串口打开时的读写标志调用函数 write()read()对串口进行只读操作只写操作或同时进行读写操作 为提高数据接收的实时性可采用中断方式利用 VxWorks 提供的 select 函数的事件触发机制将读串口的任务阻塞使其一直等待数据当有数据来到的时候该任务会立刻自动响应提高系统的实时性 4 环境配置 在本实时应用系统中采用 486 机作为目标机 串口通信时目标机 VxWorks 系统启动盘的制作步骤(1)修改通用
7、配置文件Tornadotargetconfigpc486config.h在 config.h 文件中加入以下宏定义#define INCLUDE_WDB#define INCLUDE_WDB_TTY_TEST#undef WDB_COMM_TYPE#define WDB_COMM_TYPE WDB_COMM_SERIAL/*定义通信方式为串口联结*/#define WDB_TTY_CHANNEL 1/*通道号*/#define WDB_TTY_BAUD 9600/*串口速率可设置至 38400*/#define WDB_TTY_DEV_NAME tyCo/1#define CONSOLE_TT
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 Vxworks 操作系统 串口 通信 程序设计 实现

限制150内