반응형
STM HAL 라이브러리에서 기본 제공하는 딜레이 함수는 HAL_Delay(), 카운터 함수는 HAL_GetTick() 이다. 이 두함수는 모두 ms 단위로 동작한다. 그러나 프로그래밍을 하다보면 us 단위로 제어가 필요한 경우가 있다. 이에 us 단위의 카운터, 딜레이 함수의 사용 방법에 대해서 알아보자.
1. 아래 깃허브를 통해 micros.h 파일 다운로드
2. micros.h 파일 참조
#include "micros.h"
3. DWT 초기화
DWT_Init();
4. delay_us() 사용
delay_us(500);
# 500us 딜레이 적용
5. micros() 사용
uint32_t us_tick = micros();
# micros() 함수의 반환형은 uint32_t
@ micros() 함수는 실제로 사용해 봤는데 먼가 이상하다.
라이브러리를 새로 업데이트 하거나 사용하지 말아야 하겠다.
728x90
'MCU > Learn STM32F103 basics' 카테고리의 다른 글
[stm32f103] 정확한 주기로 led 제어하기 - HAL_GetTick() 사용 (0) | 2023.09.25 |
---|---|
[stm32f103] led 제어하기 - HAL_Delay() 사용 (0) | 2023.09.24 |
[stm32f103] STM32CubeMX 필수 기본 설정 (0) | 2023.09.23 |