推荐文档列表

CAN控制器SJA1000及其应用

时间:2021-10-01 09:31:07 计算机论文 我要投稿

CAN控制器SJA1000及其应用

摘要:介绍CAN控制器SJA1000的特点、内部结构以及SJA1000的寄存器结构及地址分配;CAN协议通信格式。并以独立CAN控制器SJA1000为例,结合CAN协议说明了一种通用型CAN总线的开发与设计。

    关键词:CAN总线 SJA1000 单片机

1 SJA1000简介

SJA1000是PHILIPS公司早期CAN控制器PCA82C200的替代品,功能更强,具有如下特点:

①完全兼容PCA82C200及其工作模式,即BASICCAN模式;

②具有扩展的接收缓冲器,64字节的FIFO结构;

③支持CAN2.0B;

④支持11位和29位识别码;

⑤位速率可达1Mbit/s;

⑥支持peliCAN模式及其扩展功能;

⑦24MHz的时钟频率;

⑧支持与不同微处理器的接口;

⑨可编程的CAN输出驱动配置;

⑩增强了温度范围(-40℃~+125℃)。

图1 SJA1000内部结构

2 SJA1000内部结构

SJA1000的内部结构如图1所示,主要由接口管理逻辑IML、信息缓冲器(含发送缓冲器TXB和接收缓冲器RXFIFO)、位流处理器BSP、接收过滤器ASP、位时序处理逻辑BTL、错误管理逻辑EML、内部振荡器及复位电路等构成。IML接收来自CPU的命令,控制CAN寄存器的寻址并向控制提供中断信息及状态信息。CPU的控制经IML把要发送的数据写入TXB,TXB中的数据由BSP处理后经BTL输出到CAN BUS。BTL始终监视CAN BUS,当检测到有效的信息头“隐性电平-控制电平”的转换时启动接收过程,接收的信息首先要由位流处理器BSP处理,并由ASP过滤,只有当接收的信息的识别码与ASP检验相符时,接收信息才最终被写入RXB或RXFIFO中。RXFIFO最多可以缓存64字节的数据,该数据可被CPU读取。EML负责传递层中调制器的错误管制,它接收BSP的出错报告,促使BSP和IML进行错误统计。

3 SJA1000的寄存器结构及地址分配

表1是工作在BASIC CAN模式下的SJA1000的寄存器结构及地址分配表。CAN控制器工作模式的设定、数据的发送和接收等都是通过这些寄存器来实现的。时钟分频寄存器OCR用于设定SJA1000工作于BASIC CAN还是PeliCAN,还用于CLKOUT引脚输出时

[1] [2] [3] [4] [5]