传统的CAN总线接口电路是由采用独立的接口管理CPU、CAN控制器、收发器及隔离电路搭建,这种方法占用板面积大、接口逻辑复杂、成本高。本设计应用了ADI 公司最新发布的ADM3053 芯片,该芯片集成了CAN 收发器、信号隔离及供电隔离三部分功能,见图1中虚线方框部分。应用ADM3053有以下优势:
(1)功耗低体积小。采用了基于电磁隔离原理的iCouple信号隔离专利技术。功耗相当于同数据传输率下传统光电隔离器的1/10.同时采用了基于高频开关的芯片级变压技术isoPower实现供电隔离。在CAN 协议控制器与物理层总线之间创建一个完全隔离的接口。使得元器件数量减少,节约电路空间,简化了接口设计,降低了设计复杂度;
(2)性能更高。在时序精度、瞬态共模抑制力、通道间匹配性能均优于传统光电隔离器;(3)产品成本更低。每个通道成本相当于传统光电隔离器的40%.
1.2 ECAN模块结构
ECAN的接口与结构电路如图2所示。ECAN具有32位内部结构,包括协议内核(CPK)和消息控制器。
在协议内核CPK 收到一个来自总线的消息后,消息控制器中的接收控制单元确定是否把接收的消息存储到32 个消息邮箱RAM 中的某一个中。接收控制单元要检验消息的状态、标识符和消息对象的屏蔽来决定邮箱的位置。接收的消息经过滤波后存放到第一个邮箱中。如果接收控制单元不能找到任何一个存储接收消息的邮箱,则消息被丢弃。
一个消息有11位或29为标识符、一个控制域和最多8个字节的数据构成。当要发送一个消息时,消息控制器把这个消息发送到CPK 的发送缓冲区中,以便在下一个总线空闲状态时开始发送消息。当多于一个消息要被发送时,最高优先级的消息将被消息控制器发送到CPK中,如果两个消息的优先级相同,则大序号的邮箱首先发送。
1.3 接口电路设计
本文使用的接口管理CPU 为TMS320F2812,使用其内部集成的ECAN模块,因此只需要连接CAN总线收发器模块和隔离器件即可实现CAN总线接口功能。
ECAN接口电路图如图3所示。
ADM3053的左侧为逻辑端,逻辑端管脚接线如下: