CAN总线波特率计算方法(AHB:72MHz/APB1:36MHz)CAN外设挂载在APB1 上

CAN位时序(波特率计算方法)总结

Q 时间量子数
QT 时间量子
SS 同步段
TPS 传播时间段
Tpbs1 相位缓冲段1
Tpbs2 相位缓冲段2
TBS1 Tpbs1 + TPS //因为编程时ST库中的结构体把Tpbs1和TPS加在一起作为TBS1
BRP CAN的预分频系数
FCLK CAN挂载总线时钟
Baudrate 想要的CAN波特率

Q * BRP(未知)=FCLK / Baudrate(已知)
Q = TBS1 (Tpbs1+TPS) + Tpbs2+SS (1QT)
采样点 = (TBS1 + SS) / Q

注:采样点最好在80%左右(500K---80%),波特率增大比例降低,CIA推荐采样点85%-90%。
期望在SS段切换电平,若电平切换提前则增长PBS1段,若电平切换延后则缩短上一帧的PBS2。

2022年3月9日20:50:54

帧格式

RTR 0是数据帧,1是遥控帧
IDE 0是标准帧,1是扩展帧
R0和R1 接收位(保留位),默认显性电平
一位显性电平0起始,7位隐性电平1结束

 

bxCAN :扩展的基本模式CAN

SOF :帧起始

标准标识符:11

扩展标识符:29

FIFO:先入先出存储器,有六个脚分别是读使能、写使能、数据入、数据出、FIFO满、FIFO空。

CAN2 的开始滤波器编号 n 是通过写入CAN FMR 寄存器的 CAN2SB[5:0]配置的。

 

 

BxCAN模式

工作模式

初始化模式

INRQ:软置一入

INAK:硬一,入成功

ACK:硬一,请求入的响应

正常模式

SYNC:硬检测11连隐(总线空闲),可入正常

睡眠模式

SLEEP:软置一入

SLAK:硬一,入成功

ACK:硬一,请求入的响应

AWUM=1则硬件检测总线活动硬件将SLEEP0入正常(AWUM硬件唤醒允许位)

总结:!SLEEP+INRQ+SYNC(硬)则入正常,SLEEP+INRQ+ACK(硬)则入睡眠,!SLEEP+INRQ+ACK(硬)则入初始化。

测试模式

回环模式

CAN_BTR_LBKM=1入回环,可发不可收,有回环,RX

静默模式

CAN_BTR_SILM=1入静默,可收不可发,有回环,TX

回环静默模式

 

CAN_BTR_SILM=1&&CAN_BTR_LBKM=1入,不可收不可发,有回环,RXTX

 

 

发送流程

 

有三个邮箱,两个3级深度接收FIFO(一个邮箱存一报文,一级深度存一个报文)

 

  1. 选择一个空的邮箱把报文ID、数据长度、数据放进去(software
  2. CAN_TIXR_TXRQ = 1,发送请求(software
  3. 邮箱挂号,等待成为最高优先级(hardware
  4. 成为最高优先级,预定(hardware
  5. CANBus空闲(11连隐)发送,邮箱空(hardware
  6. -------------------------------------------------------------------------------------------------------
  7. 发送成功RQCP&&TXOK = 1RQCP只要流程执行完就为1(不管成功失败),TXOK只有成功发送才为1。(hardware
  8. 若总线仲裁引发失败:CAN_TSR_ALST = 1(可设置自动重发)
  9. 若发送错误引起失败:CAN_TSR_TERP = 1(可设置自动重发)
  10. 发送优先级:CAN_MCR_TXFP = 0ID小的先发,ID相同低邮箱先发
  11. 发送优先级:CAN_MCR_TXFP = 1,位FIFO模式邮箱,先放入邮箱的先发出
  12. 邮箱空标志位:TME = 1,邮箱空(hardware
  13. 终止发送请求:ABRQ = 1,若邮箱处于挂号或预定状态则直接清空邮箱TXOK = 0RQCP =1,若邮箱处于发送状态并且发送成功则TXOK = 1RQCP =1,自动清空邮箱。不管怎样只要将中止位置1,邮箱都会被清空。
  14. 自动重传:NART = 1(禁止自动重传)
  15. 接收邮箱空标志:FOVR = 0为空,FOVR = 1为邮箱中存在有效报文。

    接收报文数量标志位:CAN_RFR_FMP[1:0]中存储接收邮箱中报文数量。

    邮箱释放标志:RFOM = 1释放最深处的邮箱。

    禁用FIFO锁定:CAN_MCR_RFLM = 0,引发溢出的那条消息会覆盖最后接受的消息。

    启用FIFO锁定:CAN_MCR_RFLM = 0,引发溢出的那条消息会被丢弃。

 

posted on 2022-03-28 17:27  _燃灯续昼  阅读(725)  评论(0编辑  收藏  举报

导航