전자/임베디드 시스템

STM32 Hard fault 발생과 해결 방법

Begi 2020. 9. 23. 22:31
반응형

STM32에서 Hardfault가 발생하는 이유

□ Stackoverflow

□ 메모리 엑세스 가능 범위 초과

- 배열의 인덱스 확인

 

Hardfault 해결 방법

□ 디버거 창에서 Hardfault가 발생 직전에 수행된 함수를 확인한다.

□ Hardfault 인터럽터 함수를 다음과 같이 입력한 후 Hardfault가 발생하면 디버거 창에서 hardfault_flag 값을 1로 변경하여 인터럽트 함수를 빠져 나오면 Hardfault가 발생하기 직전으로 돌아가서 확인할 수 있다.

 

    void HardFault_Handler(void)

    {

    static volatile int hardfault_flag;

    hardfault_flag=0;

    while(hardfault_flag==0);

    }

 

MCU 리셋 문제 해결

 

반응형