S32K1XX系列单片机 ——MCAL 的CAN模块配置

8 篇文章 87 订阅

本文整理一下用EB配置S32K144单片机的CAN MCAL的时候遇到的问题及解决方案。

1. Can Counter ref

Can Counter ref是定义CAN模块引用OS的哪个counter,当工程中没有OS的时候,可以置为空,并勾选:

Can define loop as cycle

即可解决该问题。

2. Can Object ID (MB Handle)

在配置CAN HardwareObject的时候,需要先配置HRH(Receive Object),再配置HTH(TransmitObject),且所有Object的ID号(Can Object ID)需要连续,HRH的ID号从0开始排,HTH排在HRH的后面。

3. 波特率配置

在配置CAN节点波特率的时候,有这样几个计算关系需要注意:

Can Controller Prescaller 是CAN 控制器分频器,会把输入给CAN的外设频率再进行分频。

即CAN频率 = 输入外设频率 / Can Controller Prescaller

Tq(CanTimeQuantas)指一个CAN时钟周期,Tq = 1 / CAN频率

位时间 = 1 / 波特率

一个位时间中包含的Tq数量 = 位时间 / Tq = CAN频率 / 波特率

标准定义一个位时间中包含的Tq数量要在 [8, 25] 范围内,我们要通过调整外设输入频率、CAN 控制器分频器来实现特定的波特率和Tq数量要求。

下图中红框中的4个Segment值,就是指每个阶段各包含多少个Tq,所以这四个值相加应该等于上面算出来的一个位时间中所包含的Tq数量。

在这里插入图片描述

  • 4
    点赞
  • 46
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 6
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

老孟的孟不是很老的孟

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值