STM32F1

STM32F1, STMCubeMX, 1us delay

CoyoteUgly 2018. 8. 3. 14:40

STM32F1, STMCubeMX, 1us delay



0. 참고 사이트


1. 주요 파일

dwt_stm32_delay.c

dwt_stm32_delay.h


2. RCC > HSE > Crystal/Ceramic Resonator


3. Clock Configuration > 72MHz


4. dwt_stm32_delay 파일 추가


5. Keil > Add Group


6. Keil > 파일 추가


7. Keil > Options for Target > C/C++ > Include Path


8. Setup Compiler Include Path

../dwt_stm32_delay



9. Keil > main.c

#include "dwt_stm32_delay.h"


10. Keil > main.c

DWT_Delay_Init();


11. Keil > main.c

DWT_Delay_us() 함수를 사용하면 됩니다.
오실로스코프가 없는 관계로 디버깅 로그로만 확인하였습니다.


12. 소스


13. 결과 확인

dwt delay와 hal delay 간의 시간차에 대한 로그입니다.
동일한 count 값을 가지는 것으로 확인됩니다.


10us delay 확인



5us delay 확인



1us delay 확인

실제적으로는 3.6us로 동작하네요.




'STM32F1' 카테고리의 다른 글

STM32F1, STMCubeMX, SPI, LCD22  (0) 2018.08.03
STM32F1, STMCubeMX, I2C, LCD1602  (0) 2018.08.03
STM32F1, STMCubeMX, printf  (0) 2018.08.03
STM32F1, STM32CubeMX, 최대 Clock 설정  (0) 2018.08.02
STM32F1, STM32CubeMX, Report  (0) 2018.08.02