WinCE系统双CAN构建方案[原创]
文章来源:
CAN(Controller Area Network)即控制器局域网,由于具有高性能、高可靠性以及简单的网络结构,在工业系统中越来越受到人们的重视,并迅速成为了目前国际上应用最广泛的现场总线之一。
英创提供的EM9000系列ARM9嵌入式主板,包括EM9000、EM9260、EM9360等多种型号,都预装了正版WinCE操作系统,且带有标准CAN通讯接口。与板上其他标准通讯接口一样,英创公司为所有EM9000系列嵌入式主板的CAN接口配置了标准的WinCE流式驱动程序,应用程序可以通过打开文件的进行读写的标准方式实现对CAN总线接口的数据通讯。本文侧重于介绍CAN通讯接口,下面以EM9000嵌入式主板为例,介绍如何利用英创的ARM9嵌入式主板快速构建双CAN接口的方案。
硬件组成
英创提供的系列ARM9嵌入式主板,除EM9160嵌入式主板外,所有的ARM9主板上均可直接支持一个CAN接口。ETA701是英创公司提供的基于ISA总线扩展的一个CAN模块,可以通过ISA总线外接一个ETA701模块,即可构成一个双CAN系统。
EM9000嵌入式主板和ETA701模块提供的CAN均采用了PHILIPS半导体公司的SJA1000T CAN总线控制器,SJA1000是一款独立的控制器,主要用于汽车和一般工业环境中的控制器局域网络(CAN)芯片。它是PHILIPS半导体PCA82C200 CAN控制器(BasicCAN)的替代产品,而且它增加了一种新的工作模式(PeliCAN),这种模式支持具有很多新特性的CAN 2.0B协议。
EM9000嵌入式主板和ETA701模块的CAN通讯接口可提供高达1Mbps的数据传输速率,当采用5Kbps的的数据传输速率时其通讯距离最高可达到10KM。硬件的错误检定特性也增强了CAN的抗电磁干扰能力,这给数据的远程可靠传输提供了有利保证。
在EM9000嵌入式主板和ETA701模块的CAN通讯接口根据用户的需要分为两种:一种带光电隔离,一种不带光电隔离。带光电隔离CAN总线通讯模块的CAN收发器端的所有信号和电源与其它部分完全隔离,可承受至少1Kv(有效值)的电压冲击。
CAN接口驱动函数
一、CAN报文的帧格式
在CAN2.0B中存在两种不同的帧格式,其主要的区别在于标识符的长度,具有11位标识符的帧称为标准帧,而包括有29位标识符的帧称为扩展帧。下面分别介绍数据帧的格式。
[]
[]
[]
[]
发表时间:2009年10月20日10:18:42