FW

stm32 HAL timer(2)

잉규 2021. 12. 4. 16:52

timer를 통해 시간을 생성을 하다가 나중에 확인을 하면 시간이 틀어진 경우를 확인 할 수 있다.

왜 시간이 틀어지는것인가 확인을 해보면 PPM때문에 발생한 이슈였다.

PPM이란 Parts per Milion의 약자이며 100만분의 1이다.

MCU가 도앚ㄱ하기 위해서는 크리스털이나 오실레이터를 사용한다.

아무리 정확한 크리스털 혹은 오실레이터라도 오차가 발생할 수 있다는 것이다.

일반적으로 20PPM을사용하니 20 / 1000000정도의 오차가 생긴다.

이번에 테스트 한 장비는 25MHz 오실레이터를 사용 했으니 500Hz의 오차가 발생 할수있다는것이다.

이것을 시간으로 바꾸면 매우 큰 오차가 되니 시간을 만들때는 동기화 및 알고리즘을 잘 사용하도록 하자…

'FW' 카테고리의 다른 글

STM32CubeIDE개발환경 구축하기  (0) 2022.09.01
LPF(low pass filter)  (0) 2022.01.27
stm32 HAL timer(1)  (0) 2021.10.30
IAR Heap Stack size 조절  (0) 2021.09.19
Hanning window  (0) 2021.09.19