프로젝트 파일
stm32h7-rtos.zip
FreeRTOS 미들웨어 추가
-
인터페이스는 CMSIS_V2로 선택
-
CMSIS RTOS ?
- RTOS기능을 정의한 추상화 인터페이스로 서로 다른 RTOS를 사용하더라도 동일한 인터페이스로 사용 할 수 있다.
- V1 vs V2
- V2가 우선순위의 단계나 추가된 기능들이 있고 최신 MCU에서는 V2만 지원하는게 있기 때문에 V2 적용을 추천함
- CMSIS RTOS V2 문서
FreeRTOS 옵션 설정
-
FPU 설정
-
Heap 사이즈와 정책 설정
- Task 마다 스택을 할당해야 함으로 고려해서 충분한 크기로 정한다.
- Heap 정책은 일반적으로 heap_4를 사용함
-
Hook 함수 설정 f
- mallock 실패와 Stack 넘침시 확인 할 수 있도록 옵션 활성화
- Stack 넘침 감지 Option 1
- 감지 속도는 빠르지만 모든 경우의 스택 넘침 감지 못함
- Stack 넘침 감지 Option 2
- Option 1 보다는 조금 느리지만 더 많은 Stack 넘침의 경우를 감지 할 수 있음
- Stack 넘침 감지 관련 문서
-
newlib 설정
-
시작 Task 확인
- FreeRTOS 추가시 기본으로 생성되는 Task로 이름이나 스택 사이즈등을 변경 할 수 있다.
Systick 타이머 변경