-
카테고리
-
세부 분야
임베디드 · IoT
-
해결 여부
해결됨
fnd 관련 질문 있습니다.
24.03.13 11:15 작성 조회수 89
0
- 먼저 유사한 질문이 있었는지 검색해보세요.
- 자주 묻는 질문에 혹시 답이 있을 수 있어요.
- 서로 예의를 지키며 존중하는 문화를 만들어가요.
- 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 강의 수강중인 학생입니다. FND를 GPIO로 제어하는 부분까지 진행하고 하루 쉬고 다시 연결을 했더니 init_fnd() 함수에서 디버거가 아무것도 표시하지 않고 멈추고, 주석 처리하고 디버거를 돌려도 while문이 돌지 않고 멈춰버립니다. 무슨 문제인지를 모르겠습니다.
답변을 작성해보세요.
0
ojtube5
지식공유자2024.03.18
HardFault handler로 들어 간거는 뭔가 문제가 있는 거예요.
그 핸들로러 들어가기 전에 무언가 잘 못 된 코드가 있다는 뜻입니다.
stack overflow.
enable 되지 않은 peripheral에 접근하는 경우.
잘못된 메모리 접근
등등의 이유가 있습니다.
어느 코드에서 걸려서
HardFault로 진입하는지 찾아야 합니다.
즉 HardFault Handler 때문이 아니라, 그 전 코드에 문제가 있어서
Handler Handler에 진입하는 것입니다.
0
jjhk192
질문자2024.03.13
디버깅을 해보니 배열 정의 함수에서 알 수 없는 에러가 발생중입니다. ioc를 수정하고 코드를 재생성할때마다 #include "fnd_controller.h"가 없어집니다. 문제가 뭘까요?
ojtube5
지식공유자2024.03.13
ioc를 수정하면, 코드를 다시 작성하게 됩니다.
자동으로 코드를 작성하는 중에, 무조건 사라지는 구간이 있습니다.
그리고 이곳은 사용자가 작성한 공간이니 건들지 말라고 표시해 둔 공간이 있습니다.
즉, 코드를 작성하면, 사라지는 공간에, fnd_controller.h 파일을 include해논 것으로 추측이 됩니다.
주석을 잘 읽어보면, 이부분이 사라지는 구간인지 보존되는 구간인지 알 수 있습니다 ㅇㅇ/
jjhk192
질문자2024.03.13
원인 찾아서 해결했습니다. 강의 내용 따라서 진행하다가 Hal init() 에서 HardFault Handler 때문에 계속 진행이 막히고 있습니다. manual convert 함수를 주석처리하고 실행하면 하드폴트로 넘어가지 않습니다. 여기서는 뭘 봐야 할까요?
답변 2