android
2024-07-10 94101a2cd9baed60360f68096033dc75cbb1dcb3
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
#include "timing_delay.h"
 
void delay_init(void)
{
    CLK_DeInit();
    CLK_LSICmd(ENABLE);
    CLK_HSICmd(ENABLE);
    while(SET != CLK_GetFlagStatus(CLK_FLAG_HSIRDY));
 
    CLK_SYSCLKConfig(CLK_PRESCALER_CPUDIV1); 
    CLK_HSIPrescalerConfig(CLK_PRESCALER_HSIDIV1); //HSI = 16M (1·ÖƵ)
    
    TIM4_TimeBaseInit(TIM4_PRESCALER_2, 79);
  TIM4_ClearFlag(TIM4_FLAG_UPDATE);
}
 
void TIMDelay_N10us(uint16_t Times)
{
  TIM4_Cmd(ENABLE);                              //Æô¶¯¶¨Ê±Æ÷
  while(Times--)
  {
    while(RESET == TIM4_GetFlagStatus(TIM4_FLAG_UPDATE));
    TIM4_ClearFlag(TIM4_FLAG_UPDATE);
  }
  TIM4_Cmd(DISABLE);                              //¹Ø±Õ¶¨Ê±Æ÷
}
 
void TIMDelay_Nms(uint16_t Times)
{
  while(Times--)
  {
    TIMDelay_N10us(100);
  }
}
 
void TIMDelay_Ns(uint16_t Times)
{
  while(Times--)
  {
    TIMDelay_Nms(1000);
  }
}