广州周立功单片机发展有限公司 Tel
020
38730976 38730977 Fax:38730925 http://www.zlgmcu.com
SJA1000 独立独立独立独立 CAN 控制器控制器控制器控制器
特性
目录
1
2 总体说明
3 订货信息
4 方块图
5 引脚
6 功能说明
6.1
CAN 控制器的模块说明
6.1.1 接口管理逻辑 IML
6.1.2 发送缓冲器 TXB
6.1.3 接收缓冲器 TXB RXFIFO
6.1.4 验收滤波器 ACF
6.1.5 位流处理器 BSP
6.1.6 位时序逻辑 BTL
6.1.7 错误管理逻辑 EML
6.2 CAN 控制器的详细说明
6.2.1 与 PCA82C200 的兼容性
6.2.2 BasicCAN 和 PeliCAN 模式的区别
6.3 BasicCAN 模式
6.3.1 BasicCAN 的地址列表
6.3.2 复位值
6.3.3 控制寄存器 CR
6.3.4 命令寄存器 CMR
6.3.5 状态寄存器 SR
6.3.6 中断寄存器 IR
6.3.7 发送缓冲器列表
6.3.8 接收缓冲器
6.3.9 验收滤波器
6.4 PeliCAN 模式
6.4.1 PeliCAN 地址列表
6.4.2 复位值
6.4.3 模式寄存器 MOD
6.4.4 命令寄存器 CMR
6.4.5 状态寄存器 SR
6.4.6 中断寄存器 IR
6.4.7 中断使能寄存器 IER
6.4.8 仲裁丢失捕捉寄存器 ALC
6.4.9 误码捕捉寄存器 ECC
6.4.10 错误报警时序寄存器 EWLR
RX 错误计数寄存器 RXERR
6.4.11
TX 错误计数寄存器 TXERR
6.4.12
6.4.13 发送缓冲器
6.4.14 接收缓冲器
6.4.15 验收滤波器
6.4.16 RX 信息计数器 RMC
- 1 -
广州周立功单片机发展有限公司 Tel
020
38730976 38730977 Fax:38730925 http://www.zlgmcu.com
常规寄存器
总线定时寄存器 0 BTR0
总线定时寄存器 1 BTR1
6.4.17 RX 缓冲器起始地址寄存器 RBSA
6.5
6.5.1
6.5.2
6.5.3 输出控制寄存器 OCR
时钟分频寄存器 CDR
6.5.4
7
限值
8 温度特性
9 直流特性
10
交流特性
10.1 交流时序图
10.2 附录交流信息
11
12
封装概述
生命支持系统中的应用
- 2 -
广州周立功单片机发展有限公司 Tel
020
38730976 38730977 Fax:38730925 http://www.zlgmcu.com
1 特性
和 PCA82C200 独立 CAN 控制器引脚兼容
和 PCA82C200 独立 CAN 控制器电气兼容
PCA82C200 模式 即默认的 BasicCAN 模式
扩展的接收缓冲器 64 字节 先进先出 FIFO
和 CAN2.0B 协议兼容 PCA82C200 兼容模式中的无源扩展帧
同时支持 11 位和 29 位识别码
位速率可达 1Mbits/s
PeliCAN 模式扩展功能
--可读/写访问的错误计数器
--可编程的错误报警限制
--最近一次错误代码寄存器
--对每一个 CAN 总线错误的中断
--具体控制位控制的仲裁丢失中断
--单次发送 无重发
--只听模式 无确认 无活动的出错标
志
--支持热插拔 软件位速率检测
--验收滤波器扩展 4 字节代码 4 字节屏蔽
--自身信息接收 自接收请求
24MHz 时钟频率
对不同微处理器的接口
可编程的 CAN 输出驱动器配置
增强的温度适应 -40-+125
总体说明
2.
SJA1000 是一种独立控制器 用于移动目标和一般工业环境中的区域网络控制 CAN 它是 PHILIPS
半导体 PCA82C200 CAN 控制器 BasicCAN 的替代产品 而且 它增加了一种新的工作模式 PeliCAN ,
这种模式支持具有很多新特性的 CAN 2.0B 协议
3.
订货信息
型号
SJA1000
SJA1000T
封装
说明
名称
DIP28 塑质双列直插封装 28引脚 600mil)
SO28 塑质小型线外封装 28引脚 外宽7.5mm
版本
SOT117-1
SOT136-1
- 3 -
广州周立功单片机发展有限公司 Tel
020
38730976 38730977 Fax:38730925 http://www.zlgmcu.com
4.
方框图
ALE/AS, CS,
RD/E, WR,
CLKOUT,
MODE, INT
AD7 to AD0
3 to 7,
11, 16
控制
7
8 地址 数据
2, 1,
28 to 23
SJA1000
接口管理逻辑
信息缓冲器
发送缓冲器
位流处理器
内部总线
位时序逻辑
22
8
12
15
13
14
19
20
21
18
VDD1
VSS1
VDD3
VSS3
TX0
TX1
RX0
RX1
VSS2
VDD2
RXFIFO
接收缓冲器
振荡器
XTAL1
XTAL2
9
10
验收滤波器
错误管理逻辑
复位
17
RST
图 1 方块图
5.
管脚排列
符号
引脚
说明
AD7-AD0
ALE/AS
/CS
/RD /E
/WR
CLKOUT
VSS1
XTAL1
XTAL2
MODE
VDD3
TX0
TX1
VSS3
2 1 28-23 多路地址/数据总线
3
4
5
6
7
8
9
10
11
12
13
14
15
ALE输入信号 Intel模式 AS输入信号 Motorola模式
片选输入 低电平允许访问SJA1000
微控制器的/RD信号 Intel模式 或E使能信号 Motorola模式
微控制器的/WR信号 Intel模式 或RD/
/WR 信号 Motorola
模式
SJA1000产生的提供给微控制器的时钟输出信号 时钟信号来
源于内部振荡器且通过编程驱动 时钟控制寄存器的时钟关闭位
可禁止该引脚
接地
输入到振荡器放大电路 外部振荡信号由此输入 注1
振荡放大电路输出 使用外部振荡信号时左开路输出 注1
模式选择输入
1=Intel模式
0=Motorola模式
输出驱动的5V电压源
从CAN输出驱动器0输出到物理线路上
从CAN输出驱动器1输出到物理线路上
输出驱动器接地
- 4 -
广州周立功单片机发展有限公司 Tel
020
38730976 38730977 Fax:38730925 http://www.zlgmcu.com
/INT
/RST
VDD2
16
17
18
RX0 RX1
19 20
VSS2
VDD1
21
22
注
中断输出 用于中断微控制器 /INT在内部中断寄存器各位都被
置位时低电平有效 /INT是开漏输出 且与系统中的其它/INT是
线或的 此引脚上的低电平可以把IC从睡眠模式中激活
复位输入 用于复位CAN接口 低电平有效 把/RST引脚通过
电容连到VSS 通过电阻连到VDD可自动上电复位 例如 C=1
F;R=50k
输入比较器的5V电压源
从物理的CAN总线输入到SJA1000的输入比较器 支配 控制
电平将会唤醒SJA1000的睡眠模式 如果RX1比RX0的电平高
就读支配 控制 电平 反之读弱势电平 如果时钟分频寄存器
的CBP位 见表49 被置位 就旁路CAN输入比较器以减少内
部延时 此时连有外部收发电路 这种情况下只有RX0是激活
的 弱势电平被认为是高而支配电平被认为是低
输入比较器的接地端
逻辑电路的5V电压源
1 XTAL1 和 XTAL2 引脚必须通过 15pF 的电容连到 VSS1.
SJA1000
28
AD5
27
AD4
26
AD3
25
AD2
24
AD1
23
AD0
22
21
VDD1
VSS2
20
RX1
19
RX0
18
17
16
15
VDD2
RST
INT
VSS3
AD6
AD7
ALE/AS
CS
RD/E
WR
CLKOUT
VSS1
XTAL1
1
2
3
4
5
6
7
8
9
XTAL2
10
MODE
VDD3
11
12
TX0
13
TX1
14
图 2 引脚配置 DIP28 图 3 引脚配置 SO28
6 功能说明
6.1 CAN 控制模块的说明
6.1.1 接口管理逻辑 IML
接口管理逻辑解释来自 CPU 的命令 控制 CAN 寄存器的寻址 向主控制器提供中断信息和状态信息
6.1.2 发送缓冲器 TXB
发送缓冲器是 CPU 和 BSP 位流处理器 之间的接口 能够存储发送到 CAN 网络上的完整信息 缓
冲器长 13 个字节 由 CPU 写入 BSP 读出
6.1.3 接收缓冲器 RXB
接收缓冲器是验收滤波器和 CPU 之间的接口 用来储存从 CAN 总线上接收和接收的信息 接收缓冲
RXFIFO
- 5 -
广州周立功单片机发展有限公司 Tel
020
38730976 38730977 Fax:38730925 http://www.zlgmcu.com
器 RXB 13 个字节 作为接收 FIFO RXFIFO 长 64 字节 的一个窗口 可被 CPU 访问
CPU 在此 FIFO 的支持下 可以在处理信息的时候接收其它信息
6.1.4 验收滤波器 ACF
验收滤波器把它其中的数据和接收的识别码的内容相比较 以决定是否接收信息 在纯粹的接收测试中
所有的信息都保存在 RXFIFO 中
6.1.5 位流处理器 BSP
位流处理器是一个在发送缓冲器 RXFIFO 和 CAN 总线之间控制数据流的程序装置 它还在 CAN 总线
上执行错误检测 仲裁 填充和错误处理
6.1.6 位时序逻辑 BTL
位时序逻辑监视串口的 CAN 总线和处理与总线有关的位时序 它在信息开头 弱势-支配 的总线传输
时同步 CAN 总线位流 硬同步 接收信息时再次同步下一次传送 软同步 BTL 还提供了可编程的时
间段来补偿传播延迟时间 相位转换 例如 由于振荡漂移 和定义采样点和一位时间内的采样次数
6.1.7 错误管理逻辑 EML
EML 负责传送层模块的错误管制 它接收 BSP 的出错报告 通知 BSP 和 IML 进行错误统计
6.2 CAN 控制器的详细说明
SJA1000 在软件和引脚上都是与它的前一款 PCA82C200 独立控制器兼容的 在此基础上它增加了很
多新的功能 为了实现软件兼容 SJA1000 增加修改了两种模式
BasicCAN 模式 与 PCA82C200 兼容
PeliCAN 模式 扩展特性
工作模式通过时钟分频寄存器中的 CAN 模式位来选择 复位默认模式是 Basic CAN 模式
6.2.1 与 PCA82C200 兼容性
在 Basic CAN 模式中 SJA1000 模仿 PCA82C200 独立控制器所有已知的寄存器 在 6.2.1.1 到 6.2.1.4
节中所描述的特性不同于 PCA82C200 这主要是为了软件上的兼容性
6.2.1.1 同步模式
在 SJA1000 的控制寄存器中没有 SYNC 位 在 PCA82C200 中是 CR.6 位 同步只有在 CAN 总线上
弱势-支配 控制 的转换时才有可能发生 写这一位是没有任何影响的 为了与现有软件兼容 读取
这一位时是可以把以前写入的值读出的 对触发电路无影响
6.2.1.2 时钟分频寄存器
时钟分频寄存器用来选择 CAN 工作模式 Basic CAN /Peli CAN 它使用从 PCA82C200 保留下来的
一位 象在 PCA82C200 中一样 写一个 0-7 之间的值 就将进入 Basic CAN 模式 默认状态是 12 分频
的 Motorola 模式和 2 分频的 Intel 模式 保留的另一位补充了一些附加的功能 CBP 位 见表 49 的置位
使内部 RX 输入比较器旁路 这样在使用外部传送电路时可以减少内部延时
6.2.1.3 接收缓冲器
PCA82C200 中双接收缓冲器的概念被 Peli CAN 中的接收 FIFO 所代替 这对软件除了会增加数据溢出
的可能性之外 不会产生应用上的影响 在数据溢出之前 缓冲器可以接收两条以上信息 最多 64 字节
6.2.1.4 CAN 2.0B
SJA1000 被设计为全面支持 CAN 2.0B 协议 这就意味着在处理扩展帧信息的同时 扩展振荡器的误
差被修正了 在 Basic CAN 模式下只可以发送和接收标准帧信息 11 字节长的识别码 如果此时检测到
CAN 总线上有扩展帧的信息 如果信息正确 也会被允许且给出一个确认信号 但没有接收中断产生
6.2.2 Basic CAN 和 Peli CAN 模式的区别
在 Peli CAN 模式下 SJA1000 有一个含很多新功能的重组寄存器 SJA1000 包含了设计在 PCA82C200
中的所有位及一些新功能位 Peli CAN 模式支持 CAN 2.0B 协议规定的所有功能 29 字节的识别码
SJA1000 的主要新功能
标准帧和扩展帧信息的接收和传送
接收 FIFO 64 字节
在标准和扩展格式中都有单/双验收滤波器 含屏蔽和代码寄存器
读/写访问的错误计数器
可编程的错误限制报警
- 6 -
广州周立功单片机发展有限公司 Tel
020
38730976 38730977 Fax:38730925 http://www.zlgmcu.com
最近一次的误码寄存器
对每一个 CAN 总线错误的错误中断
仲裁丢失中断以及详细的位位置
一次性发送 当错误或仲裁丢失时不重发
只听模式 CAN 总线监听 无应答 无错误标志
支持热插 无干扰软件驱动位速检测
硬件禁止 CLKOUT 输出
6.3 BasicCAN 模式
6.3.1 BasicCAN 地址表
SJA1000 是一种 I/O 设备基于内存编址的微控制器 双设备的独立操作是通过象 RAM 一样的片内寄存
器修正来实现的
SJA1000 的地址区包括控制段和信息缓冲区 控制段在初始化载入是可被编程来配置通讯参数的 例
如 位时序 微控制器也是通过这个段来控制 CAN 总线上的通讯的 在初始化时 CLKOUT 信号可以被
微控制器编程指定一个值
应发送的信息会被写入发送缓冲器 成功接收信息后 微控制器从接收缓冲器中读取接收的信息 然后
释放空间以做下一步应用
微控制器和 SJA1000 之间状态 控制和命令信号的交换都是在控制段中完成的 这个段的列表见表 3
初始载入后 寄存器的验收代码 验收屏蔽 总线定时寄存器 0 和 1 以及输出控制就不能改变了 只有控
制寄存器的复位位被置高时 才可以访问这些寄存器
在以下两种不同的模式中访问寄存器是不同的
复位模式
工作模式
当硬件复位或控制器掉线 见表 5 状态寄存器的总线状态位 时会自动进入复位模式 见表 3 控制
寄存器的位复位请求 工作模式是通过置位控制寄存器的复位请求位激活的
表 1 BasicCAN 地址分配表 注 1
工作模式
复位模式
CAN地址
段
控制
发送缓冲器
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
读
控制
FFH
状态
FFH
FFH
FFH
FFH
FFH
FFH
测试
识别码
(10-3 )
写
控制
命令
-
-
-
-
-
-
-
测试 注2
识别码
(10-3 )
识别码 2-0
识别码 2-0
RTR和DLC
数据字节1
数据字节2
数据字节3
数据字节4
RTR和DLC
数据字节1
数据字节2
数据字节3
数据字节4
- 7 -
读
控制
FFH
状态
中断
验收代码
验收屏蔽
总线定时0
总线定时1
输出控制
测试
FFH
FFH
FFH
FFH
FFH
FFH
写
控制
命令
-
-
验收代码
验收屏蔽
总线定时0
总线定时1
输出控制
测试 注2
-
-
-
-
-
-
广州周立功单片机发展有限公司 Tel
020
38730976 38730977 Fax:38730925 http://www.zlgmcu.com
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
接收缓冲器
数据字节5
数据字节6
数据字节7
数据字节8
识别码
10-3
识别码 2-0
RTR和DLC
数据字节1
数据字节2
数据字节3
数据字节4
数据字节5
数据字节6
数据字节7
数据字节8
FFH
时钟分频器
数据字节5
数据字节6
数据字节7
数据字节8
识别码
10-3
识别码 2-0
RTR和DLC
数据字节1
数据字节2
数据字节3
数据字节4
数据字节5
数据字节6
数据字节7
数据字节8
-
时钟分频器;注
3
FFH
FFH
FFH
FFH
识别码
10-3
识别码 2-0
RTR和DLC
数据字节1
数据字节2
数据字节3
数据字节4
数据字节5
数据字节6
数据字节7
数据字节8
FFH
-
-
-
-
识别码
10-3
识别码 2-0
RTR和DLC
数据字节1
数据字节2
数据字节3
数据字节4
数据字节5
数据字节6
数据字节7
数据字节8
-
时钟分频器
时钟分频器
注
1 必须注明的是寄存器在高端 CAN 地址区被重复 8 位 CPU 地址的最高位是不参与解码的 CAN
地址 32 是和 CAN 地址 0 连续的
2 测试寄存器只用于产品测试 正常操作中使用这个寄存器会导致设备不可预料的结果
3 许多位在复位模式中是只写的 CAN 模式和 CBP
6.3.2 复位值
检测到有复位请求后将中止当前接收/发送的信息而进入复位模式 一旦向复位位传送了 1-0 的下
降沿 CAN 控制器将返回工作模式
表 2 复位模式的配置 注 1 和注 2
寄存器
位
符号
名称
控制
命令
-
-
-
OIE
EIE
TIE
RIE
RR
-
-
-
CR.7
CR.6
CR.5
CR.4
CR.3
CR.2
CR.1
CR.0
CMR.7
CMR.6
CMR.5
CMR.4 GTS
CMR.3 CDO
CMR.2 RRB
CMR.1
AT
保留
保留
保留
溢出中断使能
错误中断使能
发送中断使能
接收中断使能
复位请求
保留
保留
保留
睡眠
清除数据溢出
释放接收缓冲器
中止传送
- 8 -
值
硬件复位
软件或总线关闭复
位CR.0
0
1
0
1
1(复位模式)
注3
1(复位模式)
注3