请教 HardFault_Handler()

[复制链接]
2345|2
 楼主| lhwaizhu 发表于 2013-6-9 20:33 | 显示全部楼层 |阅读模式
我将ucGUI移植到stm32后,加入了触摸功能,打算定时10ms一次中断,在中断服务程序里调用GUI_TOUCH_Exec()函数,但是程序总是卡在HardFault_Handler函数里,将GUI_TOUCH_Exec函数放在main函数里就没有问题,请教大家这是什么情况?是不是 GUI_TOUCH_Exec这个函数运算比较复杂不能放到中断里,容易跑飞?请教了谢谢
ly7785779 发表于 2013-6-10 11:22 | 显示全部楼层
HardFault_Handler这个问题一般出现的原因是数组越界和指针出现异常,好好查查这个方面,先不要怀疑其他的,这个是最常见的,我帮别人看过很多HardFault_Handler,基本都是这个问题。
IJK 发表于 2013-6-10 14:14 | 显示全部楼层
“GUI_TOUCH_Exec这个函数运算比较复杂不能放到中断里”
赞同。
在中断里进行复杂的操作,是很不好的编程习惯。

另外,GUI_TOUCH_Exec这个函数运算比较复杂,它调用的某些函数估计是不能重入的,或许这也是造成出问题的原因。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

24

主题

79

帖子

2

粉丝
快速回复 在线客服 返回列表 返回顶部