首页 > 其他分享 >STM32定时器

STM32定时器

时间:2024-09-13 17:23:58浏览次数:11  
标签:分频 功能 定时器 TIM6 中断 STM32 TIM

  1. 定时器简介

定时器,核心就是计数器。

STM32的定时器不仅具有基本定时器中断功能,还具备捕获脉冲宽度,PWM输出,互补输出以及编码器计数等功能。

F103中共有8个定时器,TIM1-TIM8,不同定时器功能不一样,可分为三类

定时器类型

主要功能

基本定时器

TIM6和TIM7,没有输入输出通道,常用作时基,即定时功能

通用定时器

TIM2-TIM5,具有多路独立通道,可用于输入捕获/输出比较,也可用作时基

高级定时器

TIM1和TIM8,除具备通用定时器所有功能外,还具备带死区控制的互补信号输出,
刹车输入等功能(可用于电机控制,数字电源设计等)

  1. 定时器定时原理

使用精准的时基,通过硬件的方式,实现定时功能

注意:PSC(预分频器)16位(0-65535)有自加一的特性;假设预分频给0,+1=1;前面给两个波,经过预分频出去还是两个波;预分频给1,+1=2,前面给两个波,经过预分频出去就是1个波;预分频给1,+1=2,前面给4个波,经过预分频出去就是2个波;

TIM CLK:计数频率

TOUT:单位s

  1. 基本定时器实战

目的:学会1基本定时器的更新中断,LED1用于指示定时器发生更新事件的频率,每500ms状态取反一次。

  1. 确定计数器工作频率Tout;
  2. 周期确定为500ms则得出,PSC=7199,ARR=4999

接下来,开始我们的实践操作

auto-reload preload自动重装载值的缓冲区:如果我们不使能,我们一改ARR的值他就立马生效,如果我们使能了,这个缓冲区必须等你这一次的更新事件发生之后他才生效;

Trigger Output(TRGO)是他的触发模式,这里我们不需要用到。

配置好定时器,然后我们去配置中断NVIC,然后勾选在TIM6 global interrupt这里有一个TIM6的全局中断,抢占优先级设置为5;

然后生成代码,跟基本定时器有关的只有一个更新中断TIM FLAG UPDATE;

首先,我们要写HAL_TIM_Base_Start_IT(&htim6);开启中断,以及使能计时器。

定时器时间一到,进入HAL_TIM_PeriodElapsedCallback()函数中。

标签:分频,功能,定时器,TIM6,中断,STM32,TIM
From: https://blog.csdn.net/weixin_74114554/article/details/142215118

相关文章

  • Proteus 仿真 STM32 之 OLED显示屏
    介绍本博客适合有一定基础的单片机学习爱好者。OLED是一款具有良好显示性能的屏幕,在单片机领域中常见尺寸为0.96英寸(128*64),具体介绍详见博客:OLED详解本文针对OLED显示屏做一个简单的基于按键控制的计算器。器件采用stm32f103c8(主控芯片),OLED12864I2C(OLED显示屏),及基础硬件若干......
  • STM32 -中断
    并发(Concurrency)并发是指同时处理多个任务的能力,但并不意味着这些任务实际上是在同一时刻物理上同时运行的。在单处理器或多处理器系统中,并发通过时间片轮转(time-slicing)等技术实现,这些技术使得操作系统可以在多个任务之间快速切换,从而在宏观上给用户造成所有任务都在同时运行......
  • stm32之硬件SPI读写W25Q64存储器应用案例
    系列文章目录1.stm32之SPI通信协议2.stm32之软件SPI读写W25Q64存储器应用案例3.stm32之SPI通信外设文章目录系列文章目录前言一、电路接线图二、应用案例代码三、应用案例代码分析3.1基本思路3.2相关库函数介绍3.3MySPI模块3.3.1模块初始化3.3.2SPI基本时序......
  • stm32 SPI通信协议&W25Q64(软件SPI读写W25Q64)
    理论SPI1.SPI通信SPI(SerialPeripheralInterface)是由Motorola公司开发的一种通用数据总线四根通信线:SCK(SerialClock)、MOSI(MasterOutputSlaveInput)、MISO(MasterInputSlaveOutput)、SS(SlaveSelect)同步,全双工支持总线挂载多设备(一主多从)SCK:时钟线MOSI:主机输出,从......
  • STM32 之 SDRAM 详解
     目录 前言一、SDRAM简介二、SDRAM的组成原理 2.1存储单元阵列2.1.1地址译码2.1.2存储电容2.2控制逻辑2.2.1时钟同步2.2.2命令解码2.2.3模式寄存器2.3数据输入/输出缓冲2.3.1数据总线2.3.2数据锁存2.4刷新电路2.4.1自动刷新2.4.2自刷新三、STM32与S......
  • 基于STM32C8T6的CubeMX:HAL库点亮LED
    三个可能的问题和解决方法:大家完成之后回来看,每一种改错误都是一种成长,不要畏惧,要快乐,积极面对,要耐心对待STMCuBeMX新建项目的两种匪夷所思的问题https://mp.csdn.net/mp_blog/creation/editor/142151511STMCubeMX文件下载后会出现其他项目无法下载的问题https://mp.csdn.ne......
  • 五、STM32标准库硬件SPI驱动OLED(基于SSD1106)
    1、驱动芯片及MCU介绍        SSD1106是一款常用于嵌入式设备中的小型屏幕OLED(有机发光二极管)显示器驱动芯片,被广泛应用于各种嵌入式设备中,本示例程序基于SSD1106驱动芯片的OLED显示屏。        本次示例采用STM32F103系列MCU,使用标准库硬件SPI驱动OLED......
  • stm32使用cubumx配置串口不定长接收
    前言此方法利用stm32的uart+dma来实现不定长接收,利用dma中的空闲中断。设置USART1为异步通信方式使能串口1全部中断设置USART1_RX的DMA中断接收 速度设置最大(其实用115200没有影响但为保证工程严谨性)检查中断优先级这两个中断是否开启  生成代码后......
  • stm32单片机遥控美的空调
    一、硬件清单1.STM32F103核心板2.红外发射传感器(38Khz)二、空调遥控原理及应用空调主机内设有红外接收管,通过红外发射管按照特定协议向空调主机发射信号,即可实现对空调温度、风速、模式等的控制。普通遥控器便是采用这样的方式进行操控。而若将此模块集成于我们的项目当中,......
  • STM32学习笔记——中断
    中断:在主程序运行过程中,出现了特定事件(例如发生已经预知的一些情况),从而转入中断程序中,处理完成后再回到主程序中继续执行。(频繁的中断函数会影响主程序的运行,所以中断函数一边不处理特别复杂的逻辑)EXTI(ExternInterrupt)外部中断支持的触发方式:上升沿/下降沿/双边沿/软件触发支......