프로젝트 제목 없음
하부
생성일2022. 10. 5
조회1661
좋아요0
스크랩0
댓글0
첨부 파일 비공개
기술 미판매
유사 개발 의뢰 미수락
퀘스트 4/7 - A7/ M4 예제 응용 데모 시현
2020. 5. 13 (수) 02:12
문범*
조회 250
좋아요 0
스크랩 0
댓글 0
1. STM32CubeMX와 STM32CubeIDE를 사용하여 작성하고 빌드된 M4 프로젝트의 디렉토리 구조
2. STM32CubeIDE상에서 USER1 버튼을 누를 때 Interrupt handler 또는 HAL callback에서 브레이크 포인트를 설정하여 캐치된 상태의 화면
처음에는 소스를
void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin) {
if(GPIO_Pin == GPIO_PIN_14) {
HAL_GPIO_TogglePin(GPIOA,GPIO_PIN_13);
}
}
이렇게 작성했는데 동작을 안하더라고요
stm32f4xx_hal_gpio.h
void HAL_GPIO_EXTI_IRQHandler(uint16_t GPIO_Pin);
void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin);
stm32mp1xx_hal_gpio.h
void HAL_GPIO_EXTI_IRQHandler(uint16_t GPIO_Pin);
void HAL_GPIO_EXTI_Rising_Callback(uint16_t GPIO_Pin);
void HAL_GPIO_EXTI_Falling_Callback(uint16_t GPIO_Pin);
아예 외부인터럽트 콜백함수가 달랐습니다.
그런데 컴파일은 에러가 없었습니다.
3. M4 펌웨어를 linux 부팅시에 로딩되도록 포함한 뒤에 부팅 로그
동작과 상관은 없지만 첫줄 메세지가 깨지시는 분들은 sleep 1 으로 해결하세요.
4. DK2 target 보드를 부팅(리셋)하여 바로 USER1 버튼을 누를 때마다 LD6가 토글되는(M4 펌웨어가 동작하는 것) 영상