MCP2517FD:高性能CAN FD控制器的技术剖析与应用指南
一、引言
在当今的电子系统设计中,CAN FD(Controller Area Network with Flexible Data Rate)技术凭借其高速数据传输和灵活的数据长度特性,在汽车、工业自动化等领域得到广泛应用。Microchip的MCP2517FD作为一款外部CAN FD控制器,以其丰富的功能和出色的性能,为工程师们提供了一个可靠的解决方案。本文将对MCP2517FD的特性、功能模块、内存组织、SPI接口等方面进行详细剖析,帮助电子工程师更好地理解和应用这款控制器。
文件下载:MCP2517FDT-H SL.pdf
二、MCP2517FD概述
MCP2517FD是一款具有SPI接口的外部CAN FD控制器,具有成本低、占用空间小的特点。它可以轻松地添加到带有SPI接口的微控制器中,为缺乏CAN FD外设或CAN FD通道不足的微控制器添加CAN FD通信功能。该控制器支持ISO 11898 - 1:2015标准,能够处理经典CAN 2.0B和CAN FD格式的帧。
2.1 主要特性
- 速率优势:仲裁比特率最高可达1 Mbps,数据比特率最高可达8 Mbps,满足高速数据传输需求。
- 模式多样:具备混合CAN 2.0B和CAN FD模式、CAN 2.0B模式等多种工作模式,适应不同的应用场景。
- FIFO配置:拥有31个FIFO,可配置为发送或接收FIFO,还有一个发送队列(TXQ)和一个带有32位时间戳的发送事件FIFO(TEF)。
- 消息处理:支持消息传输优先级设置,可根据优先级位字段或消息ID进行排序;可编程自动重传尝试次数,可设置为无限次、3次或禁用。
- 过滤功能:配备32个灵活的过滤和屏蔽对象,可对标准ID + 前18位数据位或扩展ID进行过滤。
- 电气特性:工作电压范围为2.7至5.5V,有源电流在5.5V、40 MHz CAN时钟下最大为20 mA,睡眠电流典型值为10 μA。
2.2 典型应用
MCP2517FD可直接与工作电压在2.7V至5.5V的微控制器接口,同时可直接连接高速CAN FD收发器,无需外部电平转换器。在典型应用中,微控制器通过SPI接口对CAN FD控制器进行配置和控制,MCP2517FD通过INT、INT0和INT1向微控制器发送中断信号,CLKO引脚为微控制器提供时钟。
三、CAN FD控制器模块
3.1 FIFO配置与管理
每个FIFO可配置为发送或接收FIFO,FIFO控制模块负责跟踪FIFO的头和尾,并计算用户地址。对于发送FIFO,用户地址指向RAM中存储下一个发送消息数据的地址;对于接收FIFO,用户地址指向RAM中读取下一个接收消息数据的地址。用户通过增加FIFO的头/尾来通知FIFO消息已写入或读取。
3.2 工作模式
CAN FD控制器模块具有多种工作模式,包括配置模式、正常CAN FD模式、正常CAN 2.0模式、睡眠模式、监听模式、受限操作模式、内部和外部回环模式等。不同的模式适用于不同的应用场景,例如在调试阶段可使用回环模式进行自我测试。
3.3 消息处理
- 发送队列(TXQ):是一个特殊的发送FIFO,根据队列中存储的消息ID进行消息发送。
- 发送事件FIFO(TEF):存储已发送消息的ID,并可对消息进行时间戳标记。
- CAN FD位流处理器(BSP):实现CAN FD协议的介质访问控制,负责位流的序列化和反序列化、CAN FD帧的编码和解码、介质访问管理、帧确认以及错误检测和信号处理。
- 中断处理:当接收到新消息或消息发送成功时,CAN FD控制器模块会生成中断信号。
四、内存组织
MCP2517FD的内存主要包括MCP2517FD特殊功能寄存器(SFR)、CAN FD控制器模块SFR和消息内存(RAM)。SFR为32位宽,LSB位于较低地址。
4.1 MCP2517FD特定寄存器
包括OSC、IOCON、CRC、ECCCON和ECCSTAT等寄存器,用于控制振荡器、I/O引脚、CRC校验和ECC纠错等功能。
4.2 CAN FD控制器模块寄存器
涵盖配置寄存器、中断和状态寄存器、错误和诊断寄存器、FIFO控制和状态寄存器以及过滤配置和控制寄存器等,用于对CAN FD控制器模块进行全面配置和监控。
4.3 消息内存
MCP2517FD包含2 KB的RAM,用于存储消息对象,包括发送消息对象、接收消息对象和TEF对象。消息对象的数量和数据字节数可根据需要进行配置,FIFOs和消息对象只能在配置模式下进行配置。RAM采用错误纠正码(ECC)进行保护,支持单错误纠正(SEC)和双错误检测(DED)。
五、SPI接口
MCP2517FD通过SPI接口与微控制器进行通信,SPI时钟速度最高可达20 MHz,支持SPI模式0,0和1,1。SFR和消息内存(RAM)可通过SPI指令进行访问。
5.1 SPI指令格式
每个SPI指令以nCS引脚拉低开始,4位命令和12位地址在SCK的上升沿移入SDI。写指令时,数据位在SCK的上升沿移入SDI;读指令时,数据位在SCK的下降沿从SDO移出。指令以nCS引脚拉高结束。
5.2 寄存器访问
SFR访问是字节导向的,可一次读写任意数量的数据字节,地址在每个数据字节后自动递增。消息内存(RAM)访问是字导向的,每次读写必须是4字节的倍数。
5.3 带CRC的SPI命令
为了检测或避免SPI通信中的位错误,提供了带CRC的SPI命令,包括READ_CRC、WRITE_CRC和WRITE_SAFE等。CRC计算使用CRC - 16/USB多项式,可有效检测SPI通信中的错误。
六、振荡器与I/O配置
6.1 振荡器
MCP2517FD的振荡器系统可生成SYSCLK,用于CAN FD控制器模块和RAM访问。时间参考可以是外部40、20或4 MHz的晶体、陶瓷谐振器或外部时钟。OSC寄存器用于控制振荡器,可启用PLL将4 MHz时钟乘以10,内部40/20 MHz时钟可进行二分频,生成的时钟可通过CLKO引脚输出。
6.2 I/O配置
IOCON寄存器用于配置I/O引脚,可选择CLKO/SOF引脚的功能,将TXCAN配置为推挽或开漏输出,将INT0和INT1配置为GPIO或收发器的发送和接收中断引脚,INT0/GPIO0/XSTBY还可用于自动控制收发器的待机引脚。
七、电气规格与性能曲线
7.1 电气规格
MCP2517FD的电气规格涵盖绝对最大额定值、DC特性、CLKOUT和SOF的AC特性、晶体振荡器的AC特性、CAN比特率、CAN RX过滤的AC特性、SPI的AC特性以及温度规格等方面,为工程师在设计电路时提供了重要的参考依据。
7.2 性能曲线
文档中提供了一些典型性能曲线,如平均IDDS与温度的关系曲线,虽然这些曲线是基于有限样本的统计总结,不具有测试或保证性,但可作为设计参考。
八、封装信息
MCP2517FD提供14引脚的SOIC和VDFN封装,文档中详细介绍了封装的标记信息、尺寸规格和推荐的焊盘图案,方便工程师进行PCB设计。
九、总结
MCP2517FD作为一款功能强大的CAN FD控制器,具有高速数据传输、灵活的配置选项、可靠的错误检测和纠正机制等优点。通过深入了解其特性、功能模块、内存组织、SPI接口等方面的知识,电子工程师可以更好地将其应用于各种CAN FD通信系统中。在实际设计过程中,工程师还需要根据具体的应用需求和电气规格进行合理的电路设计和参数配置,以确保系统的稳定性和可靠性。
你在使用MCP2517FD的过程中遇到过哪些挑战?又是如何解决的呢?欢迎在评论区分享你的经验和见解。
-
MCP2517FD
+关注
关注
0文章
4浏览量
3732
发布评论请先 登录
【RK3562J开发笔记】MCP2518FD外部CAN-FD控制器的调试方法
MCP2517FD振荡器
CAN总线的系统架构
Microchip宣布提供业界第一款外部CAN灵活数据速率(CAN FD)控制器MCP2517FD
CAN FD控制器MCP2517FD的主要特性 PCB正面布局
带SPllnterface的外部CAN FD控制器MCP2517FD的英文数据手册
如何使用MCP251XFD CAN FD主板作为演示板来评估MCP2517FD器件概述
MCP2517FD CAN FD控制器的详细资料和数据手册免费下载
CAN FD Driver-裸机模式
MCP2517FD:高性能CAN FD控制器的技术剖析与应用指南
评论