计算机应用 | 古代文学 | 市场营销 | 生命科学 | 交通物流 | 财务管理 | 历史学 | 毕业 | 哲学 | 政治 | 财税 | 经济 | 金融 | 审计 | 法学 | 护理学 | 国际经济与贸易
计算机软件 | 新闻传播 | 电子商务 | 土木工程 | 临床医学 | 旅游管理 | 建筑学 | 文学 | 化学 | 数学 | 物理 | 地理 | 理工 | 生命 | 文化 | 企业管理 | 电子信息工程
计算机网络 | 语言文学 | 信息安全 | 工程力学 | 工商管理 | 经济管理 | 计算机 | 机电 | 材料 | 医学 | 药学 | 会计 | 硕士 | 法律 | MBA
现当代文学 | 英美文学 | 通讯工程 | 网络工程 | 行政管理 | 公共管理 | 自动化 | 艺术 | 音乐 | 舞蹈 | 美术 | 本科 | 教育 | 英语 |

VxWorks下PC/104-CAN驱动程序设计

2017-06-30 01:00
导读:理工论文论文,VxWorks下PC/104-CAN驱动程序设计论文样本,在线游览或下载,科教论文网海量论文供你参考:摘要:详细介绍实时多任务操作系统VxWorks环境下驱动程序的设计原理;针对驱
摘要:详细介绍实时多任务操作系统VxWorks环境下驱动程序的设计原理;针对驱动程序实现的困难,给出VxWorks下实现驱动程序的工作步骤。文件以PC/104-CAN适配卡为例,简要介绍硬件结构,重点给出驱动程序实现的关键代码。

VxWorks是一款优秀的实时多任务操作系统,具有抢占式调试、中断延迟小等特点。本文在简要介绍必备的硬件环境下,以VxWorks为平台,详细介绍驱动程序的开发。

1 PC/104-CAN适配卡的硬件结构

PC/104-CAN适配卡主要由CAN控制器(SJA1000)、光电隔离(6N137),收发驱动器(82C250)及译码电路组成。编程主要了解的是控制器SJA1000。CAN适配卡原理如图1所示。

2 CAN地址译码和中断选择

系统104主板的CPU为486DX,其对接口板访问有两种方式:内存映射和I/O访问。I/O寻址采用专门的指令,每次只能传送单个字节。内存映射方式可以访问较大的地址空间并且指令丰富,便于实现快速交换数据。本文讨论的CAN卡采用存映射模式工作,与486DX接口是104总线,它与ISA总线兼容。对于Intel X86体系的CPU,ISA可以映射的空间为0xC8000~0xEFFFF。使用比较器和地址选择开关组成可选端口地址译码电路,通过开关选通内存映射基地址(C8000H、C9000H、CA000H、…、EF000H),以避免与其它器件冲突。CAN偏移地址分配如下:

00~FFH SJA1000的寄存器;

100H~1FFH 对该范围内的任意地址进行写操作,均可导致CAN硬件复位。

SJA1000的INT引脚通过跳线选择IRQ3~7、IRQ9~12或IRQ15中的一个,避免与其它的适配卡冲突。

3 PC/104-CAN适配卡驱动实现

3.1 VxWorks驱动概述

VxWorks操作系统有两种方式实现驱动。第一种方式是,把设备驱动程序作为独立任务实现,直接在顶层任务中实现硬件操作,完成特有专用的驱动程序。第二种方式是,VxWorks的I/O系统将设备程序作为内核过程实现。这种方式便于实现I/O子系统的层次模型,便于文件系统一起把设备作为特殊文件处理,提供统一的管理、统一的界面和统一的使用方法,并把设备、文件及网络通信组织成为一致的更高层次的抽象,为用户提供统一的系统服务和用户接口。我们和这种驱动方式。 (科教作文网 zw.nseac.com整理)

作为I/O系统和硬件设备之间的连接层,VxWorks驱动就是屏蔽硬件操作,为I/O系统提供服务。实现一个完整的驱动,必须了解VxWorks下I/O的三个基本元素:File、Driver和Dervice。File是为用户提供访问设备的统一接口;Driver是实现具体的基本控制函数,也就是实现I/O系统所需要的接口;而Device则是一个抽象的硬件设备,是一系列的结构体、变量和宏定义对实际物理设备的定义。一般而言,实现一个驱动应该有三个基本的步骤:①用编程语言完成对实际物理设备的抽象;②完成系统所需要的各类接口及自身的特殊接口;③将驱动集成到操作系统中。之后还有一些调试工作。

3.2 VxWorks I/O系统驱动程序框架

VxWorks为各种设备(包括字符设备、块设备、虚拟设备及网络设备)提供统一的访问接口,包括七种基本的I/O函数:open(filename、flags、mode),create(filename、flags),read(fd、

    上一篇:谈道路预制方砖人行道的施工 下一篇:没有了