什么是CAN 总线
人
随者现场总线概念的出现到现在的近 20 年时间里,已经出现了好几种现场总线技术并
走向成熟,其中 CAN 总线已被公认为几种最有前途的现场总线之一。CAN 是一种由带有 CAN
控制器组成的高性能串行数据局域通信网络,是国际上应用最广泛的现场总线之一,最初,
CAN 被设计作为汽车环境中的微闪制器通信,在车载各电子控制装填 ECU 之间交换信息,形
成汽车电子控制网络。由于其具有通信速度快、可靠性高和性能价格比好等突出优点,它正
越拉越广泛地应用于汽车、机械工业、纺织机械、农业用机械、机器人、数控机床、医疗器
械、家用电器及传感器等领域。图 1 所示是典型的 CAN 总线节点的系统框图。
史上osaa 上
王控制器 上一] 人 | 更动器
CAN意线
图1 CAN 总线节点图
一、 系统硬件设计
SJA1000 独立 CAN 控制器是 PHILIPS 公司 PCA82C200CAN 控制器的奉代产品,它是在完
全兼容 PCA82C200 的基础上,增加了一种新的工作模式 PeliCAN,SJA1000 完全支持具有很
多新特性的 CAN2. 0B 协议。SJA1000 的工作模式通过其内部的时钟分频寄存器中的 CAN 模式
为来选择,SJA1000 可以支持多种为处理器的时序特性,如 Intel 模式或Motorla 模式,
SJA1000 与微处理器的接口非常简单,微处理器以访问外部存储器的方式来访问 SJA1000。
TJA1050 是控制器局域网 CAN 协议控制器和物理总线之间的接口,TJA1050 可以为总线
提供不同的发送性能,为 CAN 控制器提供不同的接收性能。TJA1050 主要有以下特征: 完全
符合 IS0 11898 标准, 最高速到达 IMby/S, 输入级 3. 3V 以及 5Y 器件妆容, 至少可以连接 110
个节点。本设计的微处理器为 89C51 负责初始化 SJAl1000 及通过控制 SJAL000 实现数据的接
禾和发送等通信任务,系统电路原理图如图 2 所示,
_ 寻
E一 攻 | 王训 Ne
EEE 国 己寺SEE
| 本浊
点FE
二
图2 CAN 电路原理图
CAN 控制器SJA1000 的数据线 AD0 "AD7 连接到 51 单片机的 P0 口,连接到革址为OXFA00
的外部存储器片选信号,当访问好址 OXPMO~OXPA31 时,CPU 可对 SJA1000 执行相应的读写
操作,SJA1000 的 、 、 分别与51 对应的引肝相连, 接 51 的 使51 可以通过中上方式访
间SJAI000-
1、CAN总线连接
基于CNN 总线的机个87C196 单片机网络联接时,分别将单片机的 CNN 接收、发送西要
线通过PCNS2C250CNN 总线收八器联接到 CNN 总线上, 构成多微控制器 ChN 总线连接*通信介
质可以是双绞线、同输电失世光纤,其总线连接如图 | 所示。
TXCAN CANL
[ERA一5上一
RXCAN CANH
TXCAN CANL
[ES一一
RXCAN CANH
CAN 总线
CAN总线连接
该网络最高通信速率为 Mbit/s, 当传输速率为 5Kbi t/s 时, 最大通信距离可达 10Km。
在其 CNN 总线上可挂接多达 110 个网络节点,而网络上任意一个节点均可以在任意时刻主动
地疝网络上的其他节点发送信息。 其数据传输和接收可以是点对点、一点对多点或全局广播
等方式进行。
2、87C196CA 单片机
8TC196CA 是集成 CNMN2.08 总线控制器的商性能 16 位向处理吕,特别适用于现场实时事
件控抽和分布式控制-片内的 CNN 控制器与 Inte182527 独立 CAN 控制器在软件上是妆容的,
每个CNN 控制器的输入、输出引有由二根双绞线联接到 CAN 总线上。CNN 控制大由一个输入
引脚 CRXCAN)》、一个