当前位置:   article > 正文

STM32CubeMX 定时器

stm32cubemx 定时器

目录

一、定时器基础

二、STM32CubeMX配置

1.配置外部时钟源

 2.TIM配置

3.保存工程,生成代码

三、Keil代码 

1.在main函数添加

2.用户编辑代码区,编写回调函数

3.编译成功后,下载,小灯一秒闪烁一次 


一、定时器基础

1.STM32的通用定时器是一个通过可编程预分频器(Prescaler)驱动的16位自动重装主计数器(Counter Period)构成。可以对内部时钟触发源以及外部时钟触发源进行计数。

2.通用定时器的基本工作原理:

定时器时钟信号送入16位可编程预分频器(Prescaler),该预分频器系数在0~65535之间

预分频器溢出后,会向16位的主计数器(Counter Period)发送一个脉冲信号

预分频器,本质上是一个加法计数器,预分频系数实际就是加法计数器的溢出值

3.定时器发生中断的计算方法:

定时时间=(Prescaler+1)*(Counter Period+1)* 1/定时器时钟频率

二、STM32CubeMX配置

1.配置外部时钟源

配置定时器时钟频率72MHZ

 pc13引脚输出高电平 

 2.TIM配置

LED每隔1S闪烁,选择内部时钟,预分频(Prescaler)直接用最大65535,主计数器用999

 开启中断-高级定时器

勾选 TIM 1 update interrupt 后的 Enabled 

3.保存工程,生成代码

三、Keil代码 

1.在main函数添加

HAL_TIM_Base_Start_IT(&htim1); //定时器1使能

2.用户编辑代码区,编写回调函数

   

  1. void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim)
  2.        {
  3.         if(htim->Instance == htim1.Instance)
  4.         {HAL_GPIO_TogglePin(GPIOC,GPIO_PIN_13);}
  5.        }

3.编译成功后,下载,小灯一秒闪烁一次 

链接:https://pan.baidu.com/s/13W6juOHL_IzpaMD9H56nsw  密码:w6ul

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

闽ICP备14008679号