|
想请问下论坛的各位大佬们,stm32有一个HardFault硬件错误,这个是当发生内存溢出等错误时硬件自动跳转到HardFault地址吗,还是有其他机制呢?还有一个问题就是进入HardFault前或者后是否会把stm32的中断都关掉?请大佬们解惑,谢谢
|
有关STM32H743ZGT6 驱动RTL8201F-VB芯片驱动的问题,有奖寻求帮助
STM32H5入门级DEMO板,NUCLEO-H503RB(Flash 128K,LQFP64封装)-ST中文论坛首帖
STM32F103 RTC 休眠唤醒后 读到的时间不对
春节活动的奖品到了,拿到了L152的板子,怪好看的
春节活动的中奖名单,各位坛友请查收
STM32F103的串口1(PA9/10)映射到PB6/7
问询:哪里有STEVAL-L99615C的固件包下,主要是求L9961的源码,我用来抄I2C,大三小白刚刚接触MCU,求大佬指路
STM32F103RCT6断电以后,ADC会漏电
STM32的芯片今年会涨价吗?
STM32F769I-DISCO开发包LCD DSI示例程序如何回读LCD 驱动IC的寄存器?
微信公众号
手机版
你发的那张NVIC的中断优先级表其实已经讲解的很清楚了。HARDFAULT是一个很高优先级的中断。而且是不可屏蔽的。
当发生比方说非法的地址访问的时候,就会出发HardFault中断。你看到的陷入到了hardfault函数里面可以认为是进入了hardfault的ISR。因为hardfault的isr是loop的所以,除了reset和nmi之外的中断都不可能被响应。
非法访问居多,比如数组越界访问、指针越位等,当然还有其它原因或机制,比方THUME \ARM运行状态选择不对,这点根本原因源于指令。其它还有可能是因为中断上访导致。HARDFAULT本身只是个优先级仅低于NMI和复位的异常,它不操作其它中断控制位,但由于其高优先级和它ISR处理方式或堵塞其它低优先级中断的响应,会给人感觉它能关闭其它中断。
[md]了解了,谢谢大佬
了解了,谢谢大佬