STM32G0B1_CANFD开发笔记

选择这块单片机的原因是因为性价比高,带两路CANFD,价格只有10米出头。看了下微芯的那块canfd接口芯片都得了10元左右。所已选这块,由于是第一次开发canfd,特此记录!

首先是波特率方面的注意事项:

canfd的波特率是可变,网上很多开发说明,一帧数据直接使用同一种波特率,那就失去了canfd的意义。我们这边采用仲裁段500k,数据段2M的波特率进行实验。

使用MX配置CANFD的配置表如下:

CANFD时钟设置

仲裁段波特率计算公式

BaudRate = fclk/(ClkDiv*NomPre*(NomSeg1+NomSeg2+1))

数据段波特率计算公式

BaudRate = fclk/(ClkDiv*DataPre*(DataSeg1+DataSeg2+1))

除了波特率,还有一些参数需要计算一下,比如采样点

SamplePoint=((1+Seg1)/(1+Seg1+Seg2))*100%

采样点设置推荐:波特率大于800K时设置为75%,大于500K时设置为80%,小于等于500K时设置为87.5%

SJW选择说明:若CAN系统时钟误差较大,可以适当调大SJW值,我们这边使用的是内部时钟,误差会比较大。

通过波特率计算工具,计算出一下参数

 参数就计算出来了。不懂有没有大神解释下数据预分频器为什么必须是1或2。

根据计算的参数我们来设置cube的参数

。。。后续代码还在调试,调试后更新。

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
STM32G4 是意法半导体推出的一款面向高性能应用的 32 位 ARM® Cortex®-M4 微控制器系列,具有丰富的外设和高性能特性。其中,STM32G4 系列中的 STM32G4_CANFD 是指该系列微控制器的 Controller Area Network Flexible Data Rate (CAN FD) 外设模块。 CAN FD 是一种先进的通信协议,它可以提供更高的数据传输速率和更大的数据帧长度,同时也能够保持程序兼容性。STM32G4_CANFD 模块在该系列微控制器中的应用,使得它们能够更好地满足现代应用对于高速数据传输和复杂通信的需求。 通过 STM32G4_CANFD 模块,用户可以实现更高的数据传输速率,最大可以达到 5 Mbps。同时,CAN FD 协议支持更大的数据帧长度,可达到 64 字节,这使得它非常适合需要高速数据传输的应用场景,比如汽车网络、工业控制和通信设备等领域。 在应用方面,STM32G4_CANFD 模块的灵活性也为用户提供了更多的可能。它可以通过配置灵活地适应不同的应用需求,同时在高性能和低功耗之间取得平衡。此外,基于 STM32G4 系列的微控制器,用户可以利用丰富的外设资源和先进的性能特性,轻松实现复杂的系统设计和高性能的应用开发。 综上所述,STM32G4_CANFD 模块作为 STM32G4 系列微控制器的一部分,为用户提供了高性能、灵活性和丰富的外设资源,使得它们能够更好地满足现代高速数据传输和复杂通信的需求。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值