delay.c 863 B

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. #include "stm32f10x.h"
  2. /**
  3. * @brief 微秒级延时
  4. * @param xus 延时时长,范围:0~233015
  5. * @retval 无
  6. */
  7. //void delay_us(uint32_t xus)
  8. //{
  9. // SysTick->LOAD = 72 * xus; //设置定时器重装值
  10. // SysTick->VAL = 0x00; //清空当前计数值
  11. // SysTick->CTRL = 0x00000005; //设置时钟源为HCLK,启动定时器
  12. // while(!(SysTick->CTRL & 0x00010000)); //等待计数到0
  13. // SysTick->CTRL = 0x00000004; //关闭定时器
  14. //}
  15. ///**
  16. // * @brief 毫秒级延时
  17. // * @param xms 延时时长,范围:0~4294967295
  18. // * @retval 无
  19. // */
  20. //void delay_ms(uint32_t xms)
  21. //{
  22. // while(xms--)
  23. // {
  24. // delay_us(1000);
  25. // }
  26. //}
  27. //
  28. ///**
  29. // * @brief 秒级延时
  30. // * @param xs 延时时长,范围:0~4294967295
  31. // * @retval 无
  32. // */
  33. //void delay_s(uint32_t xs)
  34. //{
  35. // while(xs--)
  36. // {
  37. // delay_ms(1000);
  38. // }
  39. //}