入门嵌入式(六)——定时器

定时器TIM

定时器就是计数器!

  • 高级定时器 TIM1、8
    刹车信号输入 死区时间互补输出等工业电机功能
  • 通用定时器 TIM2-5
    增加了扩展
  • 基本定时器 TIM6、7
    简单定时功能

基本定时器

构成

  • 预分频器 降低时钟频率
  • 计数器
  • 自动重装载寄存器 实时监控计数器的值是否与自己的值相同,触发定时器更新中断

定时来源

APB1定时器

该脉冲信号又被称为定时器的"内部时钟"信号

通用定时器

外部时钟模式

可以对GPIO口的信号计数

定时器外部时钟

GPIO口

  • 输入滤波器
  • 采样频率和检测阈值 消除抖动
  • 边沿检测器
  • 触发器
  • 触发控制器(从模式控制器)

ETR外部触发器

外部时钟模式1

外部时钟模式2

其他从模式

  • 复位模式
    会置1 触发器中断标志位 更新中断标志位
  • 门模式
    通过上升沿和下降沿控制计数的开启和暂停
    不复位计数器值 只触发触发器终端标志位
  • 触发模式
    当检测到边沿时开始计数
    只能启动,无法停止
    配合单脉冲模式启动

输入捕获

当定时器输入通道上检测到上升沿或下降沿时,立刻将计数器值记录到捕获寄存器中,以待程序稍后读取。

输入捕获的直接模式和间接模式

相关推荐
charlie1145141913 小时前
嵌入式C++工程实践第16篇:第四次重构 —— LED模板,从通用GPIO到专用抽象
c语言·开发语言·c++·驱动开发·嵌入式硬件·重构
深圳市九鼎创展科技5 小时前
MT8883 vs RK3588 开发板全面对比:选型与场景落地指南
大数据·linux·人工智能·嵌入式硬件·ubuntu
三品吉他手会点灯8 小时前
STM32 VSCode 开发-C/C++的环境配置中,找不到C/C++: Edit Configurations选项
c语言·c++·vscode·stm32·单片机·嵌入式硬件·编辑器
yu859395810 小时前
STM32 智能红外循迹小车(含码盘测速 + 避障)
stm32·单片机·嵌入式硬件
三品吉他手会点灯10 小时前
STM32 DAP 烧录报错-最终解决方法的原理和操作逻辑
stm32·单片机·嵌入式硬件
fengfuyao98510 小时前
TFT 彩屏 GUI 开发
stm32·嵌入式硬件
长安第一美人11 小时前
算能 BM1688 低延迟推流:Qt+WebSocket 直出 H5/HDMI
开发语言·网络·嵌入式硬件·websocket·交互
yongui4783411 小时前
STM32 三相电机FOC驱动方案(三电阻单电阻双模式)
stm32·单片机·嵌入式硬件
WeeJot嵌入式12 小时前
【串口】初始串口-轮询模式
stm32·单片机·嵌入式
yong999013 小时前
基于 51 单片机配合霍尔传感器实现计数 + 转速测量
单片机·嵌入式硬件