在FreeRTOS中开启硬件中断为什么会死机?

2019-07-20 11:14发布

我在FreeRTOS中开启TIM3,系统会跑进Harddfault里,关于FreeRTOS的硬件定时器有什么需要特别注意的吗?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
14条回答
taizonglai
1楼-- · 2019-07-21 09:47
 精彩回答 2  元偷偷看……
LoserMan
2楼-- · 2019-07-21 14:43
zuozhongkai 发表于 2017-11-1 16:32
你没写中断服务函数?!!那不出问题才怪了,定时器一旦开始每次中断都会去调用中断服务函数,你没写的话 ...

我不是用标准库3.5,我是用HAL库,不存在清除中断标志位的问题啊
taizonglai
3楼-- · 2019-07-21 15:35
LoserMan 发表于 2017-11-1 16:43
我不是用标准库3.5,我是用HAL库,不存在清除中断标志位的问题啊

你检查一下你的中断服务函数里面怎么写的,还有HAL库也要清除中断标志位,只是是别的函数给你干了
LoserMan
4楼-- · 2019-07-21 19:01
 精彩回答 2  元偷偷看……
taizonglai
5楼-- · 2019-07-21 23:23
 精彩回答 2  元偷偷看……
LoserMan
6楼-- · 2019-07-22 01:42
zuozhongkai 发表于 2017-11-1 17:06
哥,相信我,要的!都给你说了,你不用写是因为别的函数给你做了!

用STM32CubeMX生成代码,HAL_TIM_IRQHandler()会自动生成在stm32f4xx_it.c中,无需用户去写,所以无需关心,这个会自动生成的,只需要在回调函数中添加自己的代码就可以了,但是我不添加代码也可以,现在的问题,就是我开启TIM3会导致系统死机,开启TIM6,TIM9,进不来中断

一周热门 更多>