上传者: davis3610
|
上传时间: 2025-08-27 20:12:46
|
文件大小: 719KB
|
文件类型: PDF
### SJA1000 独立 CAN 控制器详解
#### 一、概述
SJA1000 是一款由 Philips 半导体公司研发的独立 CAN(Controller Area Network)控制器,作为 PCA82C200 的升级版,它不仅保持了与 PCA82C200 的兼容性,还新增了许多高级特性。SJA1000 主要应用于移动目标和工业环境中的区域网络控制,能够实现高效的数据通信。
#### 二、特性介绍
SJA1000 的主要特性包括:
1. **与 PCA82C200 兼容**:SJA1000 在引脚和电气特性上都与 PCA82C200 相兼容,这使得用户在升级或替换时无需修改现有的硬件设计。
2. **支持 CAN2.0B 协议**:符合 CAN2.0B 规范,支持标准帧和扩展帧,最大位速率达到 1Mbps。
3. **扩展的接收缓冲器**:提供了一个 64 字节大小的先进先出 (FIFO) 缓冲区,提高了数据处理效率。
4. **PeliCAN 模式**:除了基本的 BasicCAN 模式之外,SJA1000 还支持 PeliCAN 模式,该模式下提供了更多的功能选项,如可编程错误计数器、错误报警限制等。
5. **灵活的时钟频率**:支持高达 24MHz 的时钟频率,适应不同应用场景的需求。
6. **增强的温度适应性**:可在 -40°C 至 +125°C 的温度范围内稳定工作,适用于广泛的工业环境。
7. **多种工作模式**:包括被动扩展帧支持、只听模式、单次发送等,增强了系统的灵活性和可靠性。
8. **强大的验收滤波器**:支持 4 字节代码和 4 字节屏蔽,提高了数据包过滤的精确度。
9. **自身信息接收功能**:支持自接收请求,方便进行自我测试和调试。
10. **可编程的 CAN 输出驱动器配置**:可以根据不同的微处理器接口需求进行调整。
#### 三、工作模式
SJA1000 支持两种工作模式:
1. **BasicCAN 模式**:这是默认的工作模式,与 PCA82C200 完全兼容。在此模式下,SJA1000 提供了标准的 CAN 功能,包括基本的数据传输和错误检测。
2. **PeliCAN 模式**:这是一种扩展模式,提供了更多高级特性,如可编程错误计数器、错误报警限制等。此外,还包括了更复杂的验收滤波器和增强的错误处理机制。
#### 四、寄存器配置
SJA1000 提供了一系列寄存器来控制其工作行为,包括但不限于:
- **控制寄存器 (CR)**:用于配置控制器的基本操作参数。
- **命令寄存器 (CMR)**:用于启动或停止 CAN 数据的传输。
- **状态寄存器 (SR)**:反映当前控制器的状态。
- **中断寄存器 (IR)**:指示哪些中断已发生并允许配置中断响应。
- **发送缓冲器列表 (TXB)**:管理待发送的消息队列。
- **接收缓冲器 (RXB)**:存储接收到的数据。
- **验收滤波器 (ACF)**:定义接收消息的标准。
#### 五、方框图解析
SJA1000 的方框图清晰地展示了各个模块之间的连接关系:
1. **接口管理逻辑 (IML)**:负责与外部微处理器的通信,管理数据的输入和输出。
2. **发送缓冲器 (TXB)**:存储待发送的数据,并按优先级顺序发送到 CAN 总线上。
3. **接收缓冲器 (RXB)**:存储从 CAN 总线接收到的数据。
4. **验收滤波器 (ACF)**:用于筛选进入 RXB 的数据,确保只有符合预定标准的消息被接收。
5. **位流处理器 (BSP)**:负责位流的编码和解码,确保数据的正确传输。
6. **位时序逻辑 (BTL)**:控制 CAN 总线上的信号时序,确保通信的同步性。
7. **错误管理逻辑 (EML)**:监控 CAN 总线上的错误情况,并采取相应措施进行处理。
#### 六、封装概述
SJA1000 提供了不同的封装形式以适应不同的应用场景:
1. **DIP28 封装**:塑质双列直插封装,28 引脚,适用于需要手动焊接的场合。
2. **SO28 封装**:塑质小型线外封装,28 引脚,外宽 7.5mm,适用于空间受限的应用场景。
#### 七、应用领域
SJA1000 广泛应用于汽车电子、工业自动化、医疗设备等多个领域,在移动目标和一般工业环境中的区域网络控制中发挥着重要作用。
SJA1000 不仅继承了 PCA82C200 的所有优点,还通过引入 PeliCAN 模式等新特性进一步提升了性能和灵活性,成为 CAN 控制器领域的佼佼者。