一 CAN总线简介
CAN,全称为“Controller Area Network”,即控制器局域网,是国际上应用最广泛的现场总线之一。CAN是一种多主方式的串行通讯总线,基本设计规范要求有高的位速率,高抗电磁干 扰性,而且能够检测出产生的任何错误。当信号传输距离达到10Km时,CAN 仍可提供高达50Kbit/s的数据传输速率。 由于CAN总线具有很高的实时性能,因此,CAN已经在汽车工业、航空工业、工业控制、安全防护等领域中得到了广泛应用。
CAN具有十分优越 的特点,包括: 低成本,极高的总线利用率, 很远的数据传输距离(长达10Km), 高速的数据传输速率(高达1Mbit/s), 可根据报文的ID决定接收或屏蔽该报文, 可靠的错误处理和检错机制, 发送的信息遭到破坏后,可自动重发,节点在错误严重的情况下具有自动退出总线的功能, 报文不包含源地址或目标地址,仅用标志符来指示功能信息、优先级信息. 标准CAN的标志符长度是11位,而扩展格式CAN的标志符长度可达29位。CAN 协议的2.0A版本规定CAN控制器必须有一个11位的标志符。同时,在2.0B版本中规定,CAN控制器的标志符长度可以是11位或29位。遵循CAN2.0B协议的CAN控制器可以发送和接收11位标识符的标准格式报文或29位标识符的扩展格式报文。如果禁止CAN2.0B,则CAN 控制器只能发送和接收11位标识符的标准格式报文,而忽略扩展格式的报文结构,但不会出现错误。
二 内嵌的CAN模块的TMS320LF2407
TI(德州仪器)公司的DSP芯片TMS320LF2407 内嵌的CAN模块是一个 16位的外设模块。它完全支持CAN2.0 B协议;可工作在标准模式和扩展模式;支持数据帧和远程帧;数据收发采用邮箱方式;有可编程位定时器;可对中断配置编程;可编程实现总线唤醒功能;能自动 回复远程请求;有完备的错误诊断功能;可进行自测试;有自动重发功能。TMS320LF2407是一款性能很强的CAN控制器。邮箱方式是TI公司CAN控制器的一大特点。它们把一个RAM空间(48×16)分为六个邮箱,每个占4 ×16位的存储空间。邮箱 0~1是接收邮箱,邮箱4~5是发送邮箱,而邮箱2~3则可以随意配置成发送或接收邮箱。每个邮箱都由寄存器控制。
三 应用系统设计
针对CAN总线有以上的优点以及TI公司的TMS320LF2407 内嵌的CAN模块的方便性和实用性,本人用四片TMS320LF2407芯片组成一个CAN总线网络,进行实时收发数据,并根据各自邮箱的标识符判别数据 是接收还是丢弃。CAN收发器使用PHILIPS的PCA82C250,此系统可扩展性强,功能强大,若要增加节点个数,只需要在CAN总线上挂接带有 CAN模块的控制器即可,并对初学者及要掌握CAN总线的人来说具有很好的指导意义。
1 系统硬件设计
硬件系统分为两层:第一 层,CAN总线与DSP控制LF2407 接口层—实现CAN总线和LF2407的物理接口;第二层,DSP与外围器件的信息处理 ,因为LF2407 是适用于工控领域应用而设计的一款新型工控型芯片,集成了数字I/O,EV(事件管理器),A/D(模数转换),SPI(串行外设接口),SCI(异步串 行通信接口),CAN控制器等丰富的控制资源。其中具体介绍CAN总线与LF2407的接口电路及要注意的地方。
系统原理如下图1所示:
|