- [STM32]stm32f103에서 1초 타이머 만들기 목차
반응형
Timer 4를 사용하여 1초 타이머를 만들었다
위 그림 처럼 CubeMX에서 설정을 한 후에
main.c의 초기화 이후에 나오는 "USER CODE BEGIN "에 타이머 4를 가동 시키는 명령어를 입력한다
CubeMX에서 타이머 4는 인터럽트를 사용하도록 설정되어 있다
아래의 코드는 Timer 인터럽트가 발생하면 수행되는 모듈로 어디에나 선언되어 있으면 된다
나같은 경우는 main.c에 추가하였다
/* USER CODE BEGIN 4 */
void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim)
{
if (htim->Instance == htim4.Instance)
{
HAL_GPIO_TogglePin(TEST_OUT_GPIO_Port, TEST_OUT_Pin);
}
}
타이머를 하나만 사용하면 " if (htim->Instance == htim4.Instance) " 이 문장은 사용할 필요가 없다
그러나 나같은 경우는 Timer3, 4를 사용함으로
Timer 4에서 인터럽트가 발생하여야 GPIO Pin을 토글하게 동작시켰다
즐거운 시간되세요
반응형
'STM32' 카테고리의 다른 글
[CubeIDE]st-link 연결 (0) | 2021.11.09 |
---|---|
[CubeProgrammer]STM32F4XX 외부 메모리(Nor Flash) 프로그램 다운로드 (External Loader) (0) | 2021.11.09 |
[CubeIDE]Third-party의 라이브러리 파일(XXX.a) 추가 (0) | 2021.11.04 |
[STM32]STM32CubeIDE에서 include path 추가하기 (0) | 2021.11.01 |
[STM32F4XX]HAL_I2C 사용하기 (0) | 2021.10.27 |