STM32CubeMX中的CAN配置参数的解释
STM32CubeMX的CAN配置参数如下图所示一、Bit Timings Parameters参数解释1.1 标准 CAN 协议四段式时序图SSPTSPBS1PBS2各段官方释义SS 段同步段固定 1Tq总线电平跳变必须落在该区间所有 CAN 节点完成时钟对齐硬件固定无需配置。PTS 段传播延时段1~8Tq补偿 CAN 线束、TJA1050 收发器带来的信号传输延迟布线越长需要配置更多 Tq。PBS1 段相位缓冲段 11~8Tq等待总线电平稳定采样点就位于 PBS1 末尾同时可小幅修正节点间时钟偏差。PBS2 段相位缓冲段 22~8Tq位末尾时序容错缓冲用来抵消不同 MCU 晶振的微小频率误差避免时序错位报错。1.2 STM32 bxCAN 三段式时序图CubeMX 实际配置对应关系关键合并规则CubeMX 只看到 BS1、BS2 的原因STM32 硬件把标准协议里的PTS PBS1 两段合并为 BS1PBS2 直接对应 BS2BS1 PTS传播段 PBS1相位缓冲段1→ 采样点在 BS1 末尾BS2 PBS2相位缓冲段2结合当前配置BS15Tq、BS24Tq、SS1Tq总Tq 154 10Tq采样点位置 (15)÷1060%。1.3 两种时序结构对比图清晰看懂映射关系二、结合 CubeMX 参数的图文对应说明1. Bit Timings Parameters位时序核心参数Prescaler (for Time Quantum) 9预分频器对 APB1 时钟 9 分频生成 CAN 最小计时单位1Tq250ns分频值越大波特率越低。Time Quantum 250.0 nsCAN 时序最小时间刻度所有位段都由若干个 Tq 组成。Time Quanta in Bit Segment 1 5 TimesBS15Tq对应 PTSPBS1补偿线路传输延迟 等待电平稳定在本段末尾采集总线电平。Time Quanta in Bit Segment 2 4 TimesBS24Tq对应 PBS2位尾部时钟误差容错缓冲。Time for one Bit 2500 ns单个数据位总时长 总 Tq × 单 Tq 时长 10 × 250ns。Baud Rate 400000 bit/s总线波特率每秒传输 40 万个二进制比特。ReSynchronization Jump Width 1 TimeSJW1Tq单次时钟偏差最多修正 1 个 Tq工程常规默认配置。2. Basic Parameters基础功能参数Time Triggered Communication ModeDisable时间触发通信仅工业定时调度场景使用普通项目关闭。Automatic Bus-Off ManagementEnable总线离线自动管理总线短路报错时硬件自动保护故障恢复后自动重连车载必开。Automatic Wake-Up ModeEnable休眠模式下总线上收到报文自动唤醒 MCU用于汽车低功耗休眠唤醒场景。Automatic RetransmissionDisable发送失败不重复重发避免多节点下总线拥堵。Receive Fifo Locked ModeDisable接收缓冲区满时新数据覆盖旧数据始终保留最新总线报文。Transmit Fifo PriorityDisable遵循 CAN 原生优先级规则报文 ID 数值越小发送优先级越高。3. Advanced Parameters高级参数Test ModeNormal正常工作模式外接 CAN 收发器和其他硬件进行真实总线通信 可选Loopback 内部回环调试、Silent 总线监听抓包模式。