CAN控制器芯片介绍
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
BasicCAN模式
控制寄存器
微处理 器 (CPU)
Байду номын сангаас
命令寄存器
状态寄存器
中断寄存器
SJA1000 CAN控制器 CAN 收发器
验收代码寄存器
验收屏蔽寄存器
…. ….
CAN BUS
SJA1000是一种I/O设备基于内存编址的微控制器, 与其它控制器(CPU)之间的操作是通过象RAM一样 的片内寄存器读写来实现的。
SJA1000的特征
改良的PCA82C200功能
CAN2.0B(passive)----SJA1000的CAN2.0B passive 特征允许CAN控制器接收有29位标识符的报文。 64个字节接收FIFO----接收FIFO,可以存储高达21 个报文,这延长了最大中断服务时间,避免了数据 超载。 24MHz时钟频率----微处理器的访问更快和CAN的位 定时选择更多。 接收比较器旁路----减少内部延迟,由于改进的位 定时编程,使CAN总线长度更长。
PCA82C250功能框图
保护电路
斜率 /等待
接收器
驱动器
基准电 压
硬件结构
符号 TXD 管脚 1 功能描述 发送数据输入 地
GND
VCC RXD Vref CANL
2
3 4 5 6 7 8
电源电压
接收数据输出 参考电压输出 低电平CAN电压输入/输出 高电平CAN电压输入/输出 斜率电阻输入
PCA82C250管脚图
BasicCAN模式
复位模式
当硬件复位或控制器掉线总线状态位时会自 动进入复位模式。 是通过置位控制寄存器的复位请求位激活的
工作模式
BasicCAN 地址表
段 0 1 2 CAN地址 控制寄存器 命令寄存器 状态寄存器 寄存器名称(符号)
3 控制
4 5 6 7 8 9 发送缓冲器 10 11
有一系列先进的功能,适合于多种应用特别在系统优
化诊断和维护方面非常重要。
操作模式
BasicCAN模式
和PCA82C200兼容。BasicCAN模式是上电后默认的 操作模式,因此用PCA82C200开发的已有硬件和软 件,可以直接在SJA1000上使用而不用作任何修改。
PeliCAN模式
是新的操作模式。它能够处理所有CAN2.0B规范的 帧类型。而且它还提供一些增强功能,使SJA1000 能应用于更宽的领域。 工作模式通过时钟分频寄 存器中的CAN模式位来选择,复位时默认模式是 Basic CAN模式。
第四章 CAN网络控制器及其相关芯片
CAN总线收发器PCA82C250/PCA82C251
独立的控制芯片SJA1000及其使用
带有CAN接口芯片的DSP2407及其使用
CAN总线收发器 PCA82C250/PCA82C251
PCA82C250/251是CAN协议控制器和物理总线的接口。 此器件对总线提供差动发送能力,对CAN控制器提供差 动接收能力。又称为总线驱动器。 PCA82C251有更高的击穿电压,而且在隐性状态小拉电 流更小,在掉电情况小总线的输出特性有一定改善
SJA1000的特征
PeliCAN模式的增强功能
仲裁丢失捕捉中断----支持系统优化包括报文延迟 时间的分析。 单次发送----使软件命令最小化和允许快速重载发 送缓冲器。 仅听模式---SJA1000能够作为一个认可的CAN监控 器操作,可以分析CAN总线通信或进行自动位速率 检测。 自测试模式----支持全部CAN节点的功能自测试或 在一个系统内的自接收。
如C=1F;R=50k
VDD2
18
输入比较器的5V电压源
从物理的CAN总线输入到SJA1000的输入比较器;支配控制 电平将会唤醒SJA1000的睡眠模式;如果RX1比RX0的 电平高,就读支配控制电平,反之读弱势电平,如果时钟 分频寄存器的CBP位被置位就旁路CAN输入比较器以减少 内部延时(此时连有外部收发电路)这种情况下只有RX0 是激活的;弱势电平被认为是高,而支配电平被认为是低。 输入比较器的接地端 逻辑电路的5V电压源
SJA1000控制器结构图
主 控 制器
接口 管理 逻辑
发 送 缓 冲 器 接 收 FI FO 验收 滤波 器
CAN 核 心 模 块 CAN收 发 器
由主控制器进 行管理控制、 将欲收发的信 息(报文), 转换为CAN规 范的CAN帧, 通过CAN收发 器,在CAN BUS上交换信 息。
CAN BUS
SJA1000的内部结构及功能
SJA1000的内部结构及功能
接口管理逻辑(IML)
接口管理逻辑解释来自CPU 的命令,控制CAN 寄存 器的寻址,向主控制器提供中断信息和状态信息。 由8位并行地址/数据总线和片选、读、写、时钟、 使能等控制信号线与主控制CPU相连接。 发送缓冲器是CPU 和BSP(位流处理器)之间的接 口,能够存储发送到CAN网络上的完整信息,缓冲 器长13个字节,由CPU 写入、BSP 读出。
SJA1000的特征
PeliCAN模式的增强功能
CAN2.0B active----CAN2.0B active支持带有29位 标识符的网络扩展应用。 发送缓冲器----有11位或29位标识符的报文的单报 文发送缓冲器。 增强的验收滤波器-----两个验收滤波器模式,支 持11位和29位标识符的滤波。 可读的错误计数器、可编程的出错警告界限、错误 代码捕捉寄存器、出错中断-----支持错误分析, 在原型阶段和在正常操作期间可用于:诊断、系统 维护、系统优化。
CANH RS
工作模式
高速模式
管脚8接地。在高速工作模式下,发送器输出级晶体管将以尽 可能快的速度打开、关闭。在这种模式下,不采取任何措施 用于限制上升斜率和下降斜率。建议使用屏蔽电缆以避免射 频干扰RFI问题。
斜率控制模式
对于较低速度或较短总线长度,可使用非屏蔽双绞线或平行 线作为总线。为降低射频干扰RFI,应限制上升斜率和下降斜 率。上升斜率和下降斜率可通过由管脚8接至地的连接电阻进 行控制。斜率正比于管脚8的电流输出。
2,1,2823
3 4 5 6 7 8 9 10 11
多路地址/数据总线
ALE输入信号Intel模式AS输入信号Motorola模式 片选输入低电平允许访问SJA1000 微控制器(CPU)的/RD信号Intel模式或E使能信号Motorola模 式 微控制器(CPU)的/WR信号Intel模式或RD//WR信号 Motorola模式 SJA1000产生的提供给微控制器(CPU)的时钟输出信号时钟信 号来源于内部振荡器且通过编程驱动时钟控制寄存器的时钟关闭 位可禁止该引脚 接地 输入到振荡器放大电路外部振荡信号由此输入注1 振荡放大电路输出使用外部振荡信号时左开路输出注1 模式选择输入1=Intel模式0=Motorola模式
SJA1000控制器结构
发送缓冲器
用于存储一个完整的扩展的或标准的报文。当主控制器初始发送时, 接口管理逻辑会使CAN核心模块从发送缓冲器读CAN报文。
验收滤波器
通过这个可编程的滤波器能确定主控制器要接收哪些报文。
接收FIFO
用于存储所有收到的报文,储存报文的多少由工作模式决定,最多 能存储32个报文。因为数据超载可能性被大大降低,这使用户能更 灵活地指定中断服务和中断优先级。
VRS>0.75VCC
-10μ A<IRS<-200μ A
VRS<0.3VCC
高速模式
独立的控制芯片SJA1000及其使用
SJA1000是一个独立的CAN控制器,它在汽车和普通的
工业应用上有先进的特征。由于它和PCA82C200在硬件 和软件都兼容,因此它将会替代PCA82C200,SJA1000
SJA1000控制器结构
CAN核心模块
根据CAN规范控制CAN帧的发送和接收。收到一个报 文时,CAN核心模块将串行位流转换成用于的并行 数据,发送一个报文时则相反。 用于连接外部主控制器。外部可以是微型控制器或 任何其他器件,SJA1000通过复用的地址/数据总线, 与主控制器联系。
接口管理逻辑
收发器主要特性
完全符合ISO11898标准;
高速率(最高达1Mbps); 具有抗汽车环境中的瞬间干扰,保护总线能力; 斜率控制,降低射频干扰(RFI);
差分接收器,抗宽范围的共模干扰,抗电磁干扰(EMI)
热保护; 防止电池和地之间的发生短路;
低电流待机模式;
未上电的节点对总线无影响; 可连接110个节点。
VDD3
TX0 TX1 VSS3 /INT /RST
12
13 14 15 16 17
输出驱动的5V电压源
从CAN输出驱动器0输出到物理线路上 从CAN输出驱动器1输出到物理线路上 输出驱动器接地
中断输出用于中断微控制器(CPU)/INT在内部中断寄存器 各位都被置位时低电平有效/INT是开漏输出且与系统中 的其它/INT是线或的此引脚上的低电平可以把IC从睡眠 模式中激活
中断寄存器
验收代码寄存器 验收屏蔽寄存器 总线定时寄存器0 总线定时寄存器1 输出控制寄存器 测试寄存器 识别码(ID10-3) 识别码ID2-0)+RTR和DLC
12-19
接收缓冲器 20 21 22-29 30 31
数据字1-节8
识别码(ID10-3) 识别码ID2-0)+RTR和DLC 数据字节1-8 时钟分频器
波特率设定
总线定时寄存器0
定义了波特率预设值(BRP)和同步跳转宽度(SJW)的值。 复位模式有效时这个寄存器是可以被访问(读/写)的。在 BasicCAN模式中总是FFH。波特率预设值(BRP) CAN系统时 钟tSCL的周期是可编程的,而且决定了相应的位时序。CAN系 统时钟由如下公式计算: tSCL=2×tCLK×(32×BRP.5+16×BRP.4+8×BRP.3+4×BRP.2+ 2×BRP.1+BRP.0+1) 这里tCLK=XTAL的频率周期=1/fXTAL
工作模式
准备模式
管脚8如果接至高电平,则电路进入低电流 待机模式。在这种模式下,发送器被关闭, 而接收器转至低电流。
管脚RS选择的三种不同工作模式
在RS管脚上强制条件
模式 待机模式
斜率控制模式
管脚上电压和电流 IRS<|10μ A| 0.3VCC<VRS<0.6VCC IRS<-500μ A
位时序逻辑(BTL)
错误管理逻辑(EML)
SJA1000控制器引脚
SJA1000 控制器有 DIP28(塑质双列直插 封装)和SO28(塑质小 型外线封装)两种形式
SJA1000 DIP28引脚图
SJA1000引脚排列与引脚功能表
符号 AD7-AD0 ALE/AS /CS /RD/E /WR CLKOUT VSS1 XTAL1 XTAL2 MODE 引脚 说明
RX0,RX1 19,20
VSS2 VDD1
21 22
SJA1000的特征
与PCA82C200完全兼容的功能。
灵活的微处理器接口---允许接口大多数微型处理 器或微型控制器。 可编程的CAN输出驱动器----对各种物理层的分界 面。 CAN位频率高达1Mbit/s----SJA1000覆盖了位频率 的所有范围,包括高速应用
发送缓冲器(TXB)
SJA1000的内部结构及功能
接收缓冲器(RXB,RXFIFO)
接收缓冲器是验收滤波器和CPU之间的接口,用来 储存从CAN 总线上接收的信息,接收缓冲器(RXB, 13个字节)作为接收FIFO(RXFIFO,长64个字节) 的一个窗口,可被CPU访问,CPU在此FIFO的支持下 可以在处理信息的时候接收其它信息。
验收滤波器(ACF)
验收滤波器把它其中的数据和接收的识别码的内容 相比较,以决定是否接收信息。在纯粹的接收测试 中,所有的信息都保存在RXFIFO中。
SJA1000的内部结构及功能
位流处理器(BSP)
位流处理器是一个在发送缓冲器、RXFIFO 和CAN 总线之间, 控制数据流的程序装置,它还在CAN 总线上执行错误检测、 仲裁填充和错误处理。 位时序逻辑监视串口的CAN总线和处理与总线有关的位时序。 它在信息开头的总线传输时同步CAN 总线位流(硬同步), 接收信息时再次同步下一次传送(软同步)BTL 还提供了可 编程的间段来补偿传播延迟时间、相位转换(例如:由于振 荡漂移)和定义采样点和一位时间内的采样次数。 EML负责传送层模块的错误管制。它接收BSP 的出错报告。通 知BSP 和IML 进行错误统计。