在当今的CAN 应用中,CAN 网络的节点在不断增加,并且多个CAN 常常通过网关连接
起来,因此整个CAN 网中的报文数量(每个节点都需要处理) 急剧增加。除了应用层报文
外,网路管理和诊断报文也被引入。
需要一个增强的过滤机制来处理各种类型的报文。
此外应用层任务需要更多CPU 时间,因此报文接收所需的实时响应程度需要减轻。
接收FIFO 的方案允许,CPU 花很长时间处理应用层任务而不会丢失报文。
构筑在底层CAN 驱动程序上的高层协议软件,要求跟CAN 控制器之间的高效的接口。
1 CAN 2.0B 主动内核
CAN 模块可以完全自动地接收和发送CAN 报文;且完全支持标准标识符(11 位) 和扩展
标识符(29 位)。
2 CAN 方框图
CAN 结构框图如下:
3 接口管理逻辑(IML)
接口管理逻辑解释来自CPU 的命令,控制CAN 寄存器的寻址向主控制器提供中断信息和
状态信息。
4 发送缓冲器(TXB)
发送缓冲器是CPU 和BSP(位流处理器) 之间的接口,能够存储发送到CAN 网络上的完
整信息。缓冲器长13 个字节,由CPU 写入、BSP 读出。
5 接收缓冲器(RXB,RXFIFO)
接收缓冲器是验收滤波器和CPU 之间的接口用来储存从CAN 总线上接收和接收的信息
接收缓冲器(RXB,13 个字节) 作为接收FIFO(RXFIFO,长64 字节) 的一个窗口,可被
CPU 访问。
CPU 在此FIFO 的支持下可以在处理信息的时候接收其它信息。
6 验收滤波器(ACF)
验收滤波器把它其中的数据和接收的识别码的内容相比较,以决定是否接收信息。在纯粹
的接收测试中,所有的信息都保存在RXFIFO 中。
7 位流处理器(BSP)
位流处理器是一个在发送缓冲器、RXFIFO 和CAN 总线之间控制数据流的程序装置。它还
在CAN 总线上执行错误检测、仲裁、填充和错误处理。
8 位时序逻辑(BTL)
位时序逻辑监视串口的CAN 总线和处理与总线有关的位时序。它在信息开头‘弱势
支配’
的总线传输时同步CAN 总线位流(硬同步),接收信息时再次同步下一次传送(软同步)。BTL
还提供了可编程的时间段来补偿传播延迟时间、相位转换和定义采样点和一位时间内的采
样次数。
9 错位管理逻辑(EML)
EML 负责传送层模块的错误管制。它接收BSP 的出错报告,通知BSP 和IML 进行错误
统计。
|