PSC分频、ARR定周期、OPM停一次:基本定时器三要素

短文标题:PSC分频、ARR定周期、OPM停一次:基本定时器三要素

你有没有想过一个问题:STM32最简单的定时器能做什么?怎么用?基本定时器(TIM6/TIM7)是"定时器中的螺丝刀"------功能单一但实用。三要素:PSC分频降速,ARR定周期,OPM一次停。定时器核心三寄存器

定时周期 = (ARR+1) × (PSC+1) / 定时器时钟定时周期计算

目标:1ms中断,定时器时钟=72MHz

  1. 选PSC:PSC=71 → 分频后时钟 = 72MHz/72 = 1MHz(周期1µs)
  2. 算ARR:1ms = 1000µs → ARR=1000-1=999

TIM6->PSC = 71; // 分频

TIM6->ARR = 999; // 周期

TIM6->CR1 |= TIM_CR1_CEN; // 启动

应用1:数码管动态扫描

用TIM6定时中断,每5ms切换一位数码管,4位循环20ms,频率50Hz不闪烁。

void TIM6_IRQHandler(void)

{

static uint8_t index = 0;

// 关位选→改段选→开位选

index = (index+1) % 4;

TIM6->SR &= ~TIM_SR_UIF; // 清标志

}

应用2:OPM单脉冲模式(一次延时)

TIMx_CR1寄存器的OPM位(位3)使能单脉冲模式:

  • OPM=0:连续计数(循环)
  • OPM=1:单脉冲模式,计数到ARR后自动停止(CEN位清零),只触发一次

适合:上电延时启动、单次超时检测、按键消抖。

TIM6->CR1 |= TIM_CR1_OPM; // 单脉冲模式

TIM6->ARR = 20000; // 20ms @ 1MHz

TIM6->CR1 |= TIM_CR1_CEN; // 启动,一次后自动停

配置流程

// 1. 使能TIM6时钟

__HAL_RCC_TIM6_CLK_ENABLE();

// 2. 配置PSC和ARR

TIM6->PSC = 71;

TIM6->ARR = 999;

// 3. 使能更新中断

TIM6->DIER |= TIM_DIER_UIE;

// 4. NVIC使能

HAL_NVIC_SetPriority(TIM6_IRQn, 3, 0);

HAL_NVIC_EnableIRQ(TIM6_IRQn);

// 5. 启动定时器

TIM6->CR1 |= TIM_CR1_CEN;

基本定时器 vs 通用定时器

这个故事的启示, 基本定时器功能不多,但"够用"。定时中断、动态扫描、单脉冲延时------不需要PWM和捕获的场景,基本定时器刚好合适。写在最后 TIM6/TIM7是入门定时器的起点。PSC分频、ARR定周期、OPM一次停------三要素学会,基本定时器就能玩转了。


(本文灵感源于于振南《新概念ARM32单片机》教程第6.4节、第6.5节。)

觉得有用?点赞、转发,让更多人看懂基本定时器的核心用法。

相关推荐
国科安芯7 小时前
立方星与微纳卫星综合电子微型化趋势下的抗辐射MCU选型综述
人工智能·单片机·嵌入式硬件·mcu·risc-v·抗辐射
xunyan62347 小时前
3-1 独立按键控制LED亮灭(SDCC + Notepad++ + STC-ISP/普中ISP)
单片机·嵌入式硬件·接口隔离原则
WD137298015578 小时前
WD5030L,为充电桩、工业设备、5G 基站、车载系统、消费电子提供电源,7-30V 的宽压输入
stm32·单片机·嵌入式硬件·5g·车载系统·51单片机
创界工坊工作室10 小时前
30-基于STM32的小麦烘干塔温度控制系统设计
stm32·单片机·嵌入式硬件·proteus
Zwawa10 小时前
先把轮子转稳,才不会烧心:编码器速度环 PID 怎么接回 PWM
c语言·单片机·嵌入式
单片机仿真设计11 小时前
【proteus仿真设计】基于 STM32 的开荒机器人遥控控制系统设计(仿真图+程序)
stm32·嵌入式硬件·机器人·proteus
smartpi_ai11 小时前
51 单片机写好了,大模型语音怎么接?17T 全驱动的现成方案、双板串口分工的边界与画板前的三项硬件确认
单片机·嵌入式硬件·学习
我先去打把游戏先12 小时前
NimBLE是什么-ESP32蓝牙协议栈详解
单片机·嵌入式硬件·ubuntu
木子n113 小时前
车载以太网与SOME/IP服务化通信实战-02.状态机与订阅:SOME/IP-SD的三态迁移、重传账与上电风暴
嵌入式硬件·网络协议·车载系统·车载以太网·some/ip
Gongsion13 小时前
30V输入耐压|1.5μA超低静态电流|200mA输出,CSM52系列:线性稳压器LDO,12V母线转3.3V/5V传感器、MCU弱电支路可靠稳压方案
单片机·嵌入式硬件·车载系统·无人机·智能家居