当前位置:   article > 正文

stm32f103 TIM定时器频率和时间计算方法_stm32f103 72mhz 定时器最大定时怎么计算

stm32f103 72mhz 定时器最大定时怎么计算

stm32f103系列定时器计算方法 

频率计算方法:72000000/72/1000=1000Hz

定时器中断时间:1/1000Hz=0.001s  //1ms

TIM4代码如下:

  1. void TIM4_1ms_Init(void)  
  2. {
  3.     TIM_TimeBaseInitTypeDef TIM_TimeBaseInitStructure;
  4.     NVIC_InitTypeDef NVIC_InitStructure;
  5.     
  6.     RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM4,ENABLE);
  7.     
  8.     NVIC_InitStructure.NVIC_IRQChannel=TIM4_IRQn;
  9.     NVIC_InitStructure.NVIC_IRQChannelCmd=ENABLE;
  10.     NVIC_Init(&NVIC_InitStructure); 
  11.     
  12.     TIM_TimeBaseInitStructure.TIM_Period = 1000-1;      //1ms
  13.     TIM_TimeBaseInitStructure.TIM_Prescaler=72-1;       //72分频=1MHz
  14.     TIM_TimeBaseInitStructure.TIM_CounterMode=TIM_CounterMode_Up;//向上计数模式
  15.     TIM_TimeBaseInitStructure.TIM_ClockDivision=TIM_CKD_DIV1;
  16.     TIM_TimeBaseInit(TIM4,&TIM_TimeBaseInitStructure);
  17.     TIM_ITConfig(TIM4,TIM_IT_Update,ENABLE);
  18.     TIM_Cmd(TIM4,ENABLE);
  19. }
  20. //定时器中断
  21. void TIM4_IRQHandler(void)//定时器中断 1ms
  22. {
  23.     if(TIM_GetITStatus(TIM4,TIM_IT_Update)==SET) 
  24.     {
  25.         time1_cntr++;//根据需要添加      
  26.     }
  27.     TIM_ClearITPendingBit(TIM4,TIM_IT_Update); 
  28. }

 

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/笔触狂放9/article/detail/285204?site
推荐阅读
相关标签
  

闽ICP备14008679号