硬汉嵌入式论坛

 找回密码
 立即注册
查看: 8985|回复: 11
收起左侧

[CAN/FDCAN] 基于STM32H7的双CANFD通信案例(2022-06-30)

  [复制链接]

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106749
QQ
发表于 2021-1-23 20:40:17 | 显示全部楼层 |阅读模式
正式版:

V7-069_双FDCAN之间通信(仲裁500K,通信2M).7z (4.08MB)
V7-085_双FDCAN之间通信(仲裁500K,通信1M).7z (4.08MB)

操作说明:
1、K1按键按下,CAN2发送消息给CAN1,蜂鸣器鸣响4次。
2、K2按键按下,CAN1发送消息给CAN2,点亮LED1。
3、K3按键按下,CAN1发送消息给CAN2,熄灭LED1。

跳线帽设置
CAN1跳线帽设置.png

板子上板载的双CAN FD接线:

板载CAN1和CAN2之间的连接.png

串口打印:

12345.png




如果想使用V7板子和CAN分析仪测试也是可以的,我们这里使用我们的H7-TOOL和STM32H7通信测试:

H7-TOOL的CAN/CANFD助手支持以太网,USB和WiFi三种通信方式。

1、接线说明:

H7-TOOL和STM32H7的CAN2  FD进行通信,注意是CANH接CANH,  CANL接CANL



2、打开最新版的H7-TOOL上位机,使用USB,以太网或者WiFi方式均支持。

选择左侧的CAN助手 -> 启动CAN助手



参数介绍:
(1)帧类型 :0 - 经典CAN,最大收发8字节
                      1 - CAN FD ,   仲裁段和数据点波特率相同,最大收发64字节
                      2 - CAN FD 双波特率,仲裁段和数据点波特率不同,最大收发64字节

(2)仲裁段和数据段波特率 :除了提供常用的波特率,还提供了用户可自定义配置模式,需要用户选择如下选项,这样就可以配置右侧的“CAN波特率高级配置”



我们这里选择CAN FD双波特率,仲裁段设置为500Kbps,数据段设置为2Mbps,最大数据设置为8字节, CAN解码器设置为none_decoder.lua


3、H7-TOOL CAN接收数据测试

第2步设置完毕参数后,按下几次STM32H7板子的 K1, 可以看到H7-TOOL上位机接收到了数据:



4、H7-TOOL CAN发送数据测试

如果有多种发送格式,用户可以在快捷面板里面发送,这个面板也支持用户加载专门的配置文件,不用每次都设置。


如下的配置,点击发送,可以控制STM32H7板子的LED1点亮:



如下的配置,点击发送,可以控制STM32H7板子的LED1熄灭:







评分

参与人数 1金币 +20 收起 理由
jxgzlym + 20 很给力!

查看全部评分

回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106749
QQ
 楼主| 发表于 2021-1-24 08:48:15 | 显示全部楼层
双CAN FD的坑还挺多,待做教程时再专门整理下。
回复

使用道具 举报

3

主题

1223

回帖

1232

积分

至尊会员

积分
1232
发表于 2021-1-24 09:36:10 | 显示全部楼层
硬汉大哥,H7的CAN FD是不是只能到2.x Mbps ?
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106749
QQ
 楼主| 发表于 2021-1-24 09:58:59 | 显示全部楼层
morning_enr6U 发表于 2021-1-24 09:36
硬汉大哥,H7的CAN FD是不是只能到2.x Mbps ?

是的,经典CAN是1Mbps,CAN FD最高2Mbps,CAN FD-SiC是5-8Mbps,CAN XL是10Mbps。

下一代CAN总线标准CAN XL
http://www.armbbs.cn/forum.php?m ... 6881&fromuid=58
(出处: 硬汉嵌入式论坛)
回复

使用道具 举报

3

主题

16

回帖

25

积分

新手上路

积分
25
发表于 2021-5-17 14:19:05 | 显示全部楼层
硬汉哥你好,这个V7068的demo直接烧写到V7的板子CAN没输出,是不是我那里没设置嘛
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106749
QQ
 楼主| 发表于 2021-5-17 15:00:26 | 显示全部楼层
浅笑 发表于 2021-5-17 14:19
硬汉哥你好,这个V7068的demo直接烧写到V7的板子CAN没输出,是不是我那里没设置嘛

注意楼主位的跳线帽即可

IAR和MDK两个都是没问题的。
回复

使用道具 举报

3

主题

16

回帖

25

积分

新手上路

积分
25
发表于 2021-5-27 20:41:18 | 显示全部楼层
硬汉哥,我用V7-068_双CAN FD之间通信(beta版).7z例程烧写进去V7板子没反应;烧写 基于STM32H7的CMSIS-Driver驱动双CAN FD例子(经典CAN方式).7z的例程又可以;之前我烧写前个例程也是可以用的板子就上次做了测试就没用过
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106749
QQ
 楼主| 发表于 2021-5-28 08:42:16 | 显示全部楼层
浅笑 发表于 2021-5-27 20:41
硬汉哥,我用V7-068_双CAN FD之间通信(beta版).7z例程烧写进去V7板子没反应;烧写 基于STM32H7的CMSIS-Dr ...

加我QQ:512464265 帮你远程看看。
回复

使用道具 举报

0

主题

8

回帖

8

积分

新手上路

积分
8
发表于 2021-6-29 16:53:51 | 显示全部楼层
硬汉哥问个问题,现在H7两个CAN,CAN2接的普通收发器,CAN1接FDCAN收发器,CAN2能与F1正常通信,但CAN1不能。现在想问一下FDCAN收发器与普通收发器通信理论上能不能行?
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106749
QQ
 楼主| 发表于 2021-6-30 09:31:23 | 显示全部楼层
shizun 发表于 2021-6-29 16:53
硬汉哥问个问题,现在H7两个CAN,CAN2接的普通收发器,CAN1接FDCAN收发器,CAN2能与F1正常通信,但CAN1不能 ...

完全没问题,我们的H7-TOOL CAN助手就是用的CAN FD。用的就是CAN FD1。

跟F429,F407的经典CAN通信完全没问题。

不过注意,你要配置CAN FD为经典模式
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106749
QQ
 楼主| 发表于 2021-10-31 00:23:59 | 显示全部楼层
升级为正式版。
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106749
QQ
 楼主| 发表于 2022-6-30 01:18:04 | 显示全部楼层
H750核心板测试没问题。

image.png
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-5-4 04:55 , Processed in 0.391763 second(s), 37 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表