CubeMX配置stm32定时器中断

一、使用CubeMX对STM32进行基础的配置
1、选择需要使用的定时器

选择TIM2和TIM3示例,

注意: TIM2和其它定时器选择时钟的方法不同,TIM3等定时器是勾选Clock Source 下面的Internal Clock

2、配置定时器

定时频率=频率/((预分频器的值+1)(自动重装器的值+1))
我使用的是72MHZ的频率,计时时间设置为1s,则ARR=9999,PSC=7199(不是必须这个数)((720010000)/72000000=1s)

3、使能定时器

记住要使能所要用的所有定时器(我的是TIM2,TIM3)

CubeMX对STM32的配置就算结束了,可以生成代码了

二、使用keil 5进一步学习
1、在stm32f1xx_it.c里面找到HAL_TIM_IRQHandler()函数

在这个函数中找到回调函数void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim)

2、在main.c中重写回调函数

例如:

/* USER CODE BEGIN 0 */
void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim)
{if(htim->Instance == TIM2){HAL_GPIO_TogglePin(GPIOC,GPIO_PIN_13);}if(htim->Instance == TIM3){HAL_GPIO_TogglePin(GPIOB,GPIO_PIN_8);}
}
/* USER CODE END 0 */
                           *定时器产生中断,翻转PC13和PB8的电平*

到现在还没有结束,还需要打开定时器中断开关

3、打开定时器中断

Hal_tim.c 中找到HAL_TIM_Base_Start_IT()

在主函数中打开定时器中断

  /* USER CODE BEGIN 2 */HAL_TIM_Base_Start_IT(&htim2);HAL_TIM_Base_Start_IT(&htim3);/* USER CODE END 2 */

到此就算全部结束了

【CubeMX配置stm32定时器中断】相关推荐

  1. stm32定时器中断配置及使用

    stm32定时器中断配置及使用 定时器中断就是:可以周期性的执行某些功能,而不受main函数的影响. 我们以通用定时器time3为例说明 1.首先配置时钟源为内部时钟,分频和充装载值根据自己需要填入, ...

  2. stm32定时器中断的配置步骤

    stm32定时器中断的配置步骤 1>TIM3 时钟使能 位于低速的APB1总线上(注意:高级定时器是在高速的APB2总线上): RCC_APB1PeriphClockCmd(RCC_APB1Pe ...

  3. 【CubeMX配置STM32驱动超声波模块(HC-SR04)】

    CubeMX配置STM32以驱动超声波模块(HC-SR04) 一.CubeMX配置STM32 1.选择定时器 选择输入捕获模式 预分频设置为71,向上计数,自动重装值65535 然后将名字改为ECHO ...

  4. STM32定时器中断

    目录 一.关于STM32定时器中断 1.定时器分类 2.通用定时器的功能特点 3.定时器中断的触发 4.定时时钟计算方法 二.CubeMX初始化配置 1.芯片选型(我们这里运用的STM32F103C8 ...

  5. 【CubeMX配置STM32使用360°旋转编码器(KY-040)】

    CubeMX配置STM32使用360°旋转编码器(KY-040) 一.使用CubeMX进行基本的配置 所使用编码器的图片为: 在编码电机上面的编码器与这个的使用方法类似. 选择编码器模式 另外还需要选 ...

  6. 【CubeMX配置STM32的ADC】

    CubeMX配置STM32的ADC 包含阻塞式和非阻塞式以及多通道ADC 一.CubeMX配置STM32 1.单通道ADC 单通道的配置比较简单,需要注意的是需要中断的使能,因为在使用非阻塞式的函数时 ...

  7. 7. STM32——定时器中断(1秒闪烁灯)

    STM32--定时器中断(1秒闪烁灯) 基本框架 1. 配置定时器时钟 在 stm32f10x_rcc.h 头文件中查找相关函数函数 2. 配置定时器结构体 在 stm32f10x_tim.h 头文件 ...

  8. STM32定时器中断显示时间

    前言 利用STM32的定时器中断,实现时间的显示.我们知道利用定时器中断只能进行tick的计算,然而用来显示时间我们应该怎么办呢?经过项目的实际运用,我发现利用定时器中断配合串口通讯也能实现时间显示. ...

  9. CUBEMX配置STM32实现FTP文件传输以及使用SNTP获取网络时间并写入RTC

    CUBEMX配置STM32实现FTP文件传输以及使用SNTP获取网络时间并写入RTC 引言 FTP代码库的移植 Cubemx配置SNTP以及RTC RTC配置方法 SNTP配置方法 FATFS载入RT ...

最新文章

  1. windows下flink示例程序的执行
  2. 谈晶体管的饱和状态和饱和压降
  3. html使用element ui_Kendo UI for jQuery使用教程:自定义小部件(二)
  4. 硬链接与符号链接的比较?
  5. 字符串字段当条件查询的时候需要加引号吗_如此详细的SQL优化教程,是你需要的吗?...
  6. 信息学奥赛一本通 2061:【例1.2】梯形面积
  7. WordPress 主题教程:从零开始制作 WordPress 主题
  8. AIOps产品与架构浅析
  9. linux下嵌入式编译环境搭建,ubuntu系统下嵌入式开发环境搭建(ubuntu 16.04)
  10. python实现通讯录的增删改查_python实现数据库增删改查
  11. mvc+EF实现简单的登陆功能
  12. esp8266开发入门教程(基于Arduino)——编程基础介绍
  13. 《Redis视频教程》(p19)
  14. 三维点云处理(深度学习方法)综述
  15. c++系列:关于MSVCR100.dll、MSVCR100d.dll、Msvcp100.dll、Msvcp100D.dll 故障查及解决方法
  16. SEO优化:关于网站降权的方方面面!!!
  17. python 网络设备管理_「python」使用Telnet进行网络设备巡检
  18. 2个路由器串联做交换机共享网络的方法
  19. 故杀敌者,怒也;取敌之利者,货也
  20. ST表 详解(C语言描述)

热门文章

  1. Robotium-环境搭建
  2. 戴尔win10计算机在哪里看,戴尔win10电脑恢复系统该如何设置?
  3. 学生如何免费使用Pycharm专业版全部功能
  4. 快速查询宅急送单号物流信息的方法
  5. 【linux】linux 搭建pppoe服务器
  6. 怎么给pdf加水印,pdf加水印步骤
  7. Android 实现URL生成二维码
  8. 如何用VS2022写C语言(新手入门)
  9. C/C++ 栈的应用:表达式求值
  10. 首师大计算机科学与技术专业如何,首都师范大学计算机科学与技术