资料介绍
近年来,由于消费电子、计算机、通信(3c)一体化趋势日趋明显,嵌入式系统再度成为研究和应用的热点。嵌入式操作系统(:Real-time Embedded OperatingSystem,RTOs或EOs)作为一种实时的、支持嵌入式系统应用的操作系统软件,成为嵌入式系统(包括硬、软件系统)极为重要的组成部分,通常包括与硬件相关的底层驱动软件、系统内核、设备驱动接口、通信协议、图形界面、标准化浏览器Browser等。Windows CE操作系统就是微软公司从整体上为有限资源平台设计的多线程、完整优先权、多任务的操作系统Win CE支持各种处理器产品家族,包括x86,Xscale,ARM,MIPS和SH系列。它的模块化设计允许它对从掌上电脑到专用工业控制器的用户电子设备进行定制,选择系统模块和组件的多少决定了所需内存的大小。
Windows CE操作系统之所以能够支持各种各样的硬件设备,是因为对每一款硬件设备,都有其对应的设备驱动程序,否则这款硬件就无法在Windows CE下正常工作。win CE提供了4种设备模型,其中2种是专门用于Win CE的模型,另外2种外部模型来自其他的操作系统。基于Win CE的两种模型是本机的设备驱动程序和流接口的驱动程序;两种外部模型用于通用串行总线(USB)和网络驱动器接口标准(NDIS)驱动程序。下面针对Win CE系统下基于三星公司的ARM9内核芯片S3c2410的CAN总线控制器SJAl000,以流接口驱动程序形式进行设计。
1 CAN总线及控制器工作原理
控制器局域网CAN是由ISO定义的串行通信总线,主要用于各种过程检测及控制。它是一种多主总线,通信介质可以是双绞线、同轴电缆或光导纤维。通信速率可达1 Mb/s。cAN总线通信接口中集成了CAN协议的物理层和数据链路层功能,可完成对通信数据的成帧处理,包括位填充、数据块编码、循环冗余检验、优先级判别等项工作。它的基本设计规范要求有高位速率和高抗电磁干扰性,而且能够检测出产生的任何错误。由于cAN串行通信总线具有这些特性,它很自然的在汽车制造业以及航空工业中受到广泛应用。
SJAl000是一种独立控制器用于移动目标和一般工业环境中的区域网络控制(CAN)。它是Philips半导体公司的PC.A82(;200 CAN控制器(BasicCAN)的替代产品。而且它增加了一种新的工作模式(PeliCAN),这种模式支持具有很多新特性的CAN2.0B协议。其内部体系结构如下图1所示。
CAN核心模块控制CAN帧的发送和接收。接口管理逻辑负责连接外部主控制器,该控制器可以是卫星控制器件或任何其他器件。经过SJAl000复用的地址/数据总线访问寄存器和控制读/写选通信号都在这处理。SJAl000的发送缓冲器能够存储一个完整的报文(扩展或标准的)。当主控制器初始化发送,接口管理逻辑会使CAN核心模块从发送缓冲器读CAN报文。当收到一个报文时,CAN核心模块将串行位流转换成用于验收滤波器的并行数据。通过这个可编程的滤波器,SJAl000能确定主控制器要接收哪些报文。所有收到的报文由验收滤波器验收并存储在接收FIFO。储存报文的多少由工作模式决定,最多能存储32个报文。
2 流接口驱动程序工作机制
相比于本机设备驱动程序,流接口驱动程序表现为一个动态链接库,由设备管理器统一加载、管理和卸载。与具有单独目的的内部设备驱动程序相比,所有的流接口驱动程序都是用同一组接口并调用同一个函数集——流接口函数。win CE的文件系统通过这些人口点函数与流接口驱动进行通信,从而达到应用程序访问驱动程序、操作硬件的目的。流接口驱动程序要实现的DLL接口见表1。
Windows CE操作系统之所以能够支持各种各样的硬件设备,是因为对每一款硬件设备,都有其对应的设备驱动程序,否则这款硬件就无法在Windows CE下正常工作。win CE提供了4种设备模型,其中2种是专门用于Win CE的模型,另外2种外部模型来自其他的操作系统。基于Win CE的两种模型是本机的设备驱动程序和流接口的驱动程序;两种外部模型用于通用串行总线(USB)和网络驱动器接口标准(NDIS)驱动程序。下面针对Win CE系统下基于三星公司的ARM9内核芯片S3c2410的CAN总线控制器SJAl000,以流接口驱动程序形式进行设计。
1 CAN总线及控制器工作原理
控制器局域网CAN是由ISO定义的串行通信总线,主要用于各种过程检测及控制。它是一种多主总线,通信介质可以是双绞线、同轴电缆或光导纤维。通信速率可达1 Mb/s。cAN总线通信接口中集成了CAN协议的物理层和数据链路层功能,可完成对通信数据的成帧处理,包括位填充、数据块编码、循环冗余检验、优先级判别等项工作。它的基本设计规范要求有高位速率和高抗电磁干扰性,而且能够检测出产生的任何错误。由于cAN串行通信总线具有这些特性,它很自然的在汽车制造业以及航空工业中受到广泛应用。
SJAl000是一种独立控制器用于移动目标和一般工业环境中的区域网络控制(CAN)。它是Philips半导体公司的PC.A82(;200 CAN控制器(BasicCAN)的替代产品。而且它增加了一种新的工作模式(PeliCAN),这种模式支持具有很多新特性的CAN2.0B协议。其内部体系结构如下图1所示。
CAN核心模块控制CAN帧的发送和接收。接口管理逻辑负责连接外部主控制器,该控制器可以是卫星控制器件或任何其他器件。经过SJAl000复用的地址/数据总线访问寄存器和控制读/写选通信号都在这处理。SJAl000的发送缓冲器能够存储一个完整的报文(扩展或标准的)。当主控制器初始化发送,接口管理逻辑会使CAN核心模块从发送缓冲器读CAN报文。当收到一个报文时,CAN核心模块将串行位流转换成用于验收滤波器的并行数据。通过这个可编程的滤波器,SJAl000能确定主控制器要接收哪些报文。所有收到的报文由验收滤波器验收并存储在接收FIFO。储存报文的多少由工作模式决定,最多能存储32个报文。
2 流接口驱动程序工作机制
相比于本机设备驱动程序,流接口驱动程序表现为一个动态链接库,由设备管理器统一加载、管理和卸载。与具有单独目的的内部设备驱动程序相比,所有的流接口驱动程序都是用同一组接口并调用同一个函数集——流接口函数。win CE的文件系统通过这些人口点函数与流接口驱动进行通信,从而达到应用程序访问驱动程序、操作硬件的目的。流接口驱动程序要实现的DLL接口见表1。
下载该资料的人也在下载
下载该资料的人还在阅读
更多 >
- 第11章:CAN控制器模块PPT下载 32次下载
- 汽车驱动系统的CAN总线设计 44次下载
- 结合Motorola控制器芯片的CAN总线通信研究 15次下载
- 如何使用FPGA和CAN控制器MCP2515实现惯导系统的CAN总线接口的设计 17次下载
- 如何使用FPGA进行CAN控制器软核的设计与实现 25次下载
- 基于DSP_FPGA与CAN总线的跟踪控制器设计 5次下载
- 基于CAN总线的汽车发动机智能电子控制器研究 16次下载
- FPGA实现CAN总线控制器源码 91次下载
- CAN控制器模块
- 工程设备CAN总线控制系统设计
- CAN总线在液压支架控制器的应用
- 以8051微控制器和82527独立CAN总线控制器为核心组成
- 基于CAN总线的客房通信控制器的设计
- VxWorks环境下CAN控制器驱动程序的设计
- CAN总线控制器Verilog代码
- CAN收发器与CAN控制器的区别 1433次阅读
- 总线控制器驱动是哪个驱动 总线驱动器的作用 1550次阅读
- 基于FPGA的CAN总线控制器的设计 1136次阅读
- 基于MCP2510 CAN控制器实现CAN总线系统智能节点的设计 3885次阅读
- 基于LPC2294控制器的CAN总线网状冗余节点方案 2789次阅读
- 两款CAN总线控制器的对比和应用场景分析 6236次阅读
- CAN总线扩展帧的双滤波方式 2324次阅读
- 采用CAN总线控制器SJA1000实现控制电路接口的设计 7428次阅读
- 关于CAN总线的一些基础问题 1995次阅读
- 基于CAN总线接口卡的软件设计 1519次阅读
- 浅析CAN总线错误分析与解决 4924次阅读
- CAN总线控制器设计及测试程序 6823次阅读
- CAN总线学习笔记:验收滤波 1568次阅读
- CAN总线如何验收滤波 5568次阅读
- 嵌入式Win CE中CAN总线控制器的驱动设计与实现 1796次阅读
下载排行
本周
- 1TC358743XBG评估板参考手册
- 1.36 MB | 330次下载 | 免费
- 2开关电源基础知识
- 5.73 MB | 6次下载 | 免费
- 3100W短波放大电路图
- 0.05 MB | 4次下载 | 3 积分
- 4嵌入式linux-聊天程序设计
- 0.60 MB | 3次下载 | 免费
- 5基于FPGA的光纤通信系统的设计与实现
- 0.61 MB | 2次下载 | 免费
- 6基于FPGA的C8051F单片机开发板设计
- 0.70 MB | 2次下载 | 免费
- 751单片机窗帘控制器仿真程序
- 1.93 MB | 2次下载 | 免费
- 8基于51单片机的RGB调色灯程序仿真
- 0.86 MB | 2次下载 | 免费
本月
- 1OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234315次下载 | 免费
- 2555集成电路应用800例(新编版)
- 0.00 MB | 33564次下载 | 免费
- 3接口电路图大全
- 未知 | 30323次下载 | 免费
- 4开关电源设计实例指南
- 未知 | 21548次下载 | 免费
- 5电气工程师手册免费下载(新编第二版pdf电子书)
- 0.00 MB | 15349次下载 | 免费
- 6数字电路基础pdf(下载)
- 未知 | 13750次下载 | 免费
- 7电子制作实例集锦 下载
- 未知 | 8113次下载 | 免费
- 8《LED驱动电路设计》 温德尔著
- 0.00 MB | 6653次下载 | 免费
总榜
- 1matlab软件下载入口
- 未知 | 935054次下载 | 免费
- 2protel99se软件下载(可英文版转中文版)
- 78.1 MB | 537796次下载 | 免费
- 3MATLAB 7.1 下载 (含软件介绍)
- 未知 | 420026次下载 | 免费
- 4OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234315次下载 | 免费
- 5Altium DXP2002下载入口
- 未知 | 233046次下载 | 免费
- 6电路仿真软件multisim 10.0免费下载
- 340992 | 191185次下载 | 免费
- 7十天学会AVR单片机与C语言视频教程 下载
- 158M | 183278次下载 | 免费
- 8proe5.0野火版下载(中文版免费下载)
- 未知 | 138040次下载 | 免费
评论
查看更多