通用定时器Timer的基本模式

特点:多通道,一般有四个

16位或者32位的计数器(CNT)

多种时钟源(内部APB,外部时钟其他定时器)

多种功能模式:基本定时,中断输入捕获,PWM等

基本结构

APB总线 PSC预分配器 CNT CCR

1.基本定时模式

时钟源:

APB总线时钟按照(PSC预分配)(84-1才设置成84)设定频率计数,CNT增减当计数器达到预设的自动重装载值(ARR)时,产生更新时间(UEV),可以触发中断

应用:

产生精确的时间基准,周期性中断保证控制周期

2.编码器接口模式

时钟源:

引脚输入脉冲

ARR设置成最大值,CNT参与计数,CCR不参与

功能:

解码增量式编码器的A/B相信号计数器根据编码器的旋转方向递增或者递减

(正交编码器)两个相差90°控制正负旋转

应用:位置检测,速度测量等主要用于电机闭环控制

3.PWM模式

时钟源:

APB总线时钟

CNT在0至ARR,ARR决定周期频率,CCR决定占空比

功能:

通过设置自动重装载(ARR),,确定PWM周期,设置比较值(CCR)确定占空比。当计数器(CNT)在周期内达到CCR的值时,改变输出引脚的状态,产生PWM波形

4.输入捕获模式

时钟源:

APB总线时钟

CNT随着时钟计数,ARR最大值,CCR输入触发,保存CNT 的值

功能:

定时器捕获外部信号到达的时间,及当输入信号的沿到来时候将当前计数器的值保存到CCR中

一个定时器只有一个CNT,

但是有4个 ccr实体1个arr

四个pwm波的占空比可以不同,但是频率一定相同

常用API

PWM模式

  1. HAL_TIM_PWM_Init(TIM_HandleTypeDef *htim) //初始化

  2. HAL_TIM_PWM_Start(TIM_HandleTypeDef *htim, uint32_t Channel) //启动功能

  3. HAL_TIM_PWM_Stop(TIM_HandleTypeDef *htim, uint32_t Channel) //停止功能

  4. __HAL_TIM_SET_COMPARE(HANDLE, CHANNEL, COMPARE) //设置CCR

  5. __HAL_TIM_SET_AUTORELOAD(HANDLE, AUTORELOAD) //设置ARR

定时中断模式

  1. HAL_TIM_Base_Init(TIM_HandleTypeDef *htim) //初始化

  2. HAL_TIM_Base_Start_IT(TIM_HandleTypeDef *htim) //启动功能

  3. HAL_TIM_Base_Stop_IT(TIM_HandleTypeDef *htim) //停止功能

  4. __HAL_TIM_SET_AUTORELOAD(HANDLE, AUTORELOAD) //ARR

  5. __HAL_TIM_SET_COUNTER(HANDLE, COUNTER) //得到cnt

  6. __HAL_TIM_GET_COUNTER(HANDLE) //看门狗

  7. HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim) //中断处理

相关推荐
朝发如雪2 小时前
快速掌握单片机基础(3)(PWM)(通信协议基础)(串口通信时序与参数)(电气特性与电平标准)(51单片机UART寄存器配置)(串口应用层协议)
单片机
天空'之城4 小时前
单片机基础核心知识点汇总(四十)
单片机·嵌入式硬件
smartpi_ai5 小时前
离线语音模块误识别问题全面解决方案:命令词设计、防误触与灵敏度调优指南
人工智能·单片机·语音识别
LCG元5 小时前
STM32F103 驱动 HX711 称重实战:DOUT 就绪时序、增益切换陷阱与两点标定精度实测
stm32·单片机·嵌入式硬件
染予5 小时前
代码中相关C语言知识点总结
stm32
优信电子5 小时前
STM32 驱动 DHT30 测量环境温湿度(兼容SHT30):从时序解析到完整代码实战
stm32·嵌入式·传感器·sht30·温湿度·环境测量·dht30
小李不想当小白7 小时前
DMA直接存储器存取(STM32标准库学习笔记)
笔记·stm32·单片机·嵌入式硬件·学习·分享
朝发如雪7 小时前
快速掌握单片机基础(6)(数据处理与传送指令)(跳转与分支指令)(栈操作与混合编程)(程序状态寄存器操作指令)(内存映射)
单片机·arm
blue_ice .7 小时前
Verilog DDS 数字信号发生器:DAC 输出模拟波形与 ADC 回采观测
开发语言·单片机·嵌入式硬件·fpga开发
深圳市恒锐丰科技杨生7 小时前
EG4318 / EG4319 / EG4320 铅酸电池三段式充电副边管理芯片|屹晶 EGmicro
嵌入式硬件·硬件工程