CAN总线位定时配置详解-MCP2515寄存器设置
需积分: 50 144 浏览量
更新于2024-08-10
收藏 1.37MB PDF 举报
"MCP2515是一款独立的CAN协议控制器,支持CAN V2.0B规范,工作速率可达1Mb/s,具有接收和发送功能,内置接收缓冲器、验收屏蔽寄存器和验收滤波寄存器。该器件通过高速SPI接口与主MCU通信,并具备时钟输出、中断输出、低功耗特性,适用于工业和扩展温度范围。"
在CAN总线通信中,位定时配置是非常关键的一环,它决定了数据在总线上的准确传输。在标题提到的"位定时配置寄存器-tensorflow1.4官方文档整理版"中,虽然主要讨论的是MCP2515这个硬件设备,但其位定时配置的概念在任何CAN通信系统中都同样适用。
首先,对时间段编程有三个基本要求:传播段加相位缓冲段PS1必须大于等于相位缓冲段PS2;传播段加相位缓冲段PS1大于等于TDELAY;相位缓冲段PS2要大于同步跳转宽度SJW。这些条件确保了在不同节点之间保持同步,并能应对可能的时钟偏移。
以125kHz的CAN波特率为例,假设系统时钟FOSC为20MHz,每个时钟周期TOSC为50ns,那么每个位时间TQ为500ns。位时间被设定为16个TQ,这样可以得到所需的波特率。位的采样时刻通常发生在位时间的60-70%处,这样可以保证数据的稳定接收。
同步段设置为1TQ,传播段设置为2TQ,然后选择相位缓冲段PS1为7TQ,采样会发生在10TQ之后。相位缓冲段PS2设定为6TQ,根据规则,SJW的最大值为4TQ,但通常为了稳定性,SJW取1TQ即可。
关于振荡器容差,对于高达125千位/秒的传输速率,可以使用陶瓷谐振器,但如果需要覆盖CAN协议的全速范围,推荐使用石英振荡器,因为它们的频率偏差更小。不同节点之间的振荡器频率偏差不应超过1.7%,以保证总线上的同步。
位定时配置寄存器CNF1、CNF2和CNF3在MCP2515中控制着CAN总线的位定时。BRP设置波特率预分频比,PRSEG和PHSEG1分别设定传播段和相位缓冲段PS1的长度,SAM控制接收引脚的采样次数。CNF3中的PHSEG2仅在BTLMODE为1时设定相位缓冲段PS2的长度。
位定时配置是CAN通信中的核心部分,它涉及到波特率、采样点、同步和容错等多个方面。MCP2515通过配置寄存器精细地调整这些参数,确保了CAN总线的有效和可靠通信。
2022-11-15 上传
2022-08-08 上传
2020-09-28 上传
点击了解资源详情
2014-09-23 上传
2021-05-09 上传
363 浏览量
点击了解资源详情
陆鲁
- 粉丝: 26
- 资源: 3885
最新资源
- 黑板风格计算机毕业答辩PPT模板下载
- CodeSandbox实现ListView快速创建指南
- Node.js脚本实现WXR文件到Postgres数据库帖子导入
- 清新简约创意三角毕业论文答辩PPT模板
- DISCORD-JS-CRUD:提升 Discord 机器人开发体验
- Node.js v4.3.2版本Linux ARM64平台运行时环境发布
- SQLight:C++11编写的轻量级MySQL客户端
- 计算机专业毕业论文答辩PPT模板
- Wireshark网络抓包工具的使用与数据包解析
- Wild Match Map: JavaScript中实现通配符映射与事件绑定
- 毕业答辩利器:蝶恋花毕业设计PPT模板
- Node.js深度解析:高性能Web服务器与实时应用构建
- 掌握深度图技术:游戏开发中的绚丽应用案例
- Dart语言的HTTP扩展包功能详解
- MoonMaker: 投资组合加固神器,助力$GME投资者登月
- 计算机毕业设计答辩PPT模板下载