BIGGGG 发表于 2024-1-25 21:41:31

程序跑了一会,会进入硬件中断,而且进硬件中断时间不确定

是在FREERTOS上跑的程序,大概是10-40分钟左右就会进一次硬件中断(这个时间确实不确定,今天下午长时间跑程序才发现这个问题)
现在的问题是 为什么连进硬件中断的时间都不确定,以前学习的时候,也进过硬件中断 但是进硬件中断的地方是差不多的
现在的做法是进入硬件中断马上重启,但是这只是临时的办法 还需要把这个问题找出来
怎么查找原因?是因为我任务的堆栈开的有问题吗?

tang_qianfeng 发表于 2024-1-25 22:27:57

本帖最后由 tang_qianfeng 于 2024-1-25 22:29 编辑

看看lr等寄存器,是哪里让mcu进入fault的,大概率是任务栈或者堆溢出了

t3486784401 发表于 2024-1-25 23:34:56

中断不得有专门的原因寄存器么,查 CPU 手册吧

初音之恋 发表于 2024-1-26 08:33:45

会不会是线程栈溢出

风过不留痕z 发表于 2024-1-26 08:40:23

tracealyzer,你值得拥有

Arm2048 发表于 2024-1-26 09:12:29

不是“硬件中断”,是HardFault_Handler吧?

bruce_helen 发表于 2024-1-26 09:25:24

程序写的有问题,好好检查review代码,排除法找到问题代码

mainbp 发表于 2024-1-26 09:51:02

和我遇到的问题太像了,解决方法与楼上一样。
把硬件延时换成软件,暂时没出现。

无问西东 发表于 2024-1-26 09:56:26

mainbp 发表于 2024-1-26 09:51
和我遇到的问题太像了,解决方法与楼上一样。
把硬件延时换成软件,暂时没出现。 ...
(引用自8楼)

楼上谁说出了解决方法?

BIGGGG 发表于 2024-1-26 10:00:10

tang_qianfeng 发表于 2024-1-25 22:27
看看lr等寄存器,是哪里让mcu进入fault的,大概率是任务栈或者堆溢出了
(引用自2楼)

大概是这个情况我把任务的大小改了一下从上班到现在 一个多小时 至少没有进过一次硬件中断

BIGGGG 发表于 2024-1-26 10:01:54

mainbp 发表于 2024-1-26 09:51
和我遇到的问题太像了,解决方法与楼上一样。
把硬件延时换成软件,暂时没出现。 ...
(引用自8楼)

我想问一下 您的具体做法 因为楼上好像没有解决办法麻烦您了

mainbp 发表于 2024-1-26 10:09:39

7楼呀      
页: [1]
查看完整版本: 程序跑了一会,会进入硬件中断,而且进硬件中断时间不确定