硬汉嵌入式论坛

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

[CAN/FDCAN] H750 CAN跑着跑着就进入hardfault了,寄存器都是AA,可能是哪里问题呢?

[复制链接]

6

主题

18

回帖

36

积分

新手上路

积分
36
发表于 2023-3-21 16:18:43 | 显示全部楼层 |阅读模式
下载+(4).png
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107031
QQ
发表于 2023-3-21 16:54:19 | 显示全部楼层
是不是CAN时钟崩溃了,时钟异常会导致寄存器出问题。
回复

使用道具 举报

6

主题

18

回帖

36

积分

新手上路

积分
36
 楼主| 发表于 2023-3-21 17:04:32 | 显示全部楼层
eric2013 发表于 2023-3-21 16:54
是不是CAN时钟崩溃了,时钟异常会导致寄存器出问题。

测试了一下,都是发送的包达到一定数量就会崩溃。单个CAN,发送到71次的时候就崩溃,两路CAN交替发送,各发10次,也就是21次的时候就会崩溃。查看stack信息都指向的是HAL_FDCAN_AddMessageToTxFifoQ()函数
回复

使用道具 举报

6

主题

18

回帖

36

积分

新手上路

积分
36
 楼主| 发表于 2023-3-21 17:13:48 | 显示全部楼层
eric2013 发表于 2023-3-21 16:54
是不是CAN时钟崩溃了,时钟异常会导致寄存器出问题。

stack信息都指向的是HAL_FDCAN_AddMessageToTxFifoQ(),从循环发送的数据来看,崩溃的次数都是固定的,单通道循环发送,第71次崩溃,双通道交替发送,第21次崩溃。两路CAN是在外部用线直接短接的,1发1收。会不会是FIFO之类的满了造成的呢?
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107031
QQ
发表于 2023-3-21 17:25:22 | 显示全部楼层
xinhaic 发表于 2023-3-21 17:13
stack信息都指向的是HAL_FDCAN_AddMessageToTxFifoQ(),从循环发送的数据来看,崩溃的次数都是固定的,单 ...

FIFO满了不影响,FIFO满了之后是覆盖或者阻塞的玩法。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-15 02:18 , Processed in 0.194910 second(s), 28 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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