STM32: 输入捕获基本结构

输入捕获基本结构

1. GPIO
  • GPIO: 通用输入输出引脚,用于接收外部信号。
  • 滤波器: 对GPIO接收到的信号进行滤波处理,以去除噪声干扰。
2. 边沿检测/极性选择
  • 边沿检测: 检测GPIO信号的上升沿或下降沿。
  • 极性选择: 选择触发事件的边沿(上升沿、下降沿或双沿)。
3. 分频器
  • 分频器: 对检测到的边沿信号进行分频处理,以适应定时器的计数频率。
4. CCR1 (捕获/比较器)
  • CCR1: 捕获寄存器,用于存储定时器当前的计数值。
  • 捕获/比较器: 当检测到触发事件时,将定时器的当前计数值捕获到CCR1中。
5. 定时器单元
  • ARR (Auto-reload register): 自动重装载寄存器,设置定时器的最大计数值。
  • PSC (Prescaler): 预分频器,设置定时器的计数频率。
  • CNT (Counter): 计数器,根据预分频器的时钟进行计数。
6. 触发源选择
  • 触发源选择: 选择触发输入捕获的信号源。
  • TI1FP1: 触发输入信号,经过滤波和边沿检测后的信号。
7. 从模式 Reset
  • 从模式 Reset: 在某些情况下,触发事件可以导致定时器复位。

工作流程

  1. GPIO信号输入:

    • 外部信号通过GPIO引脚输入。
    • 信号首先经过滤波器处理,去除噪声。
  2. 边沿检测:

    • 滤波后的信号被送入边沿检测模块。
    • 边沿检测模块检测信号的上升沿或下降沿。
  3. 极性选择:

    • 根据配置选择触发事件的边沿(上升沿、下降沿或双沿)。
  4. 分频器处理:

    • 检测到的边沿信号经过分频器处理,以适应定时器的计数频率。
  5. 捕获操作:

    • 当检测到触发事件时,定时器的当前计数值被捕获到CCR1寄存器中。
    • 这个值反映了触发事件发生时定时器的状态。
  6. 定时器计数:

    • 定时器继续计数,直到下一个触发事件发生。
    • 计数器CNT根据预分频器PSC的时钟进行计数。
  7. 自动重装载:

    • 当计数器CNT达到ARR设定的最大值时,计数器清零并重新开始计数。
  8. 从模式 Reset:

    • 在某些情况下,触发事件可以导致定时器复位,重新开始计数。

示例说明

假设:

  • ARR = 99: 计数器的最大值为99。
  • PSC = 1: 预分频器不进行分频。
  • CCR1: 捕获寄存器,用于存储计数值。
工作过程
  1. 计数器从0开始递增:

    • 当CNT = 0时,开始计数。
    • 当CNT = 99时,计数器清零并重新开始计数。
  2. 边沿检测:

    • 当GPIO信号的上升沿到来时,触发捕获操作。
  3. 捕获操作:

    • 将当前计数值捕获到CCR1寄存器中。
  4. 重复上述过程:

    • 每次检测到上升沿时,捕获当前计数值,并记录在CCR1中。

总结

输入捕获功能主要用于测量时间间隔、频率或周期。通过配置定时器和捕获寄存器,可以精确地捕捉外部事件发生的时间点,并进行相应的处理。

相关推荐
天空'之城6 小时前
单片机基础核心知识点汇总(四十)
单片机·嵌入式硬件
smartpi_ai7 小时前
离线语音模块误识别问题全面解决方案:命令词设计、防误触与灵敏度调优指南
人工智能·单片机·语音识别
LCG元7 小时前
STM32F103 驱动 HX711 称重实战:DOUT 就绪时序、增益切换陷阱与两点标定精度实测
stm32·单片机·嵌入式硬件
染予7 小时前
代码中相关C语言知识点总结
stm32
优信电子7 小时前
STM32 驱动 DHT30 测量环境温湿度(兼容SHT30):从时序解析到完整代码实战
stm32·嵌入式·传感器·sht30·温湿度·环境测量·dht30
小李不想当小白9 小时前
DMA直接存储器存取(STM32标准库学习笔记)
笔记·stm32·单片机·嵌入式硬件·学习·分享
朝发如雪9 小时前
快速掌握单片机基础(6)(数据处理与传送指令)(跳转与分支指令)(栈操作与混合编程)(程序状态寄存器操作指令)(内存映射)
单片机·arm
blue_ice .9 小时前
Verilog DDS 数字信号发生器:DAC 输出模拟波形与 ADC 回采观测
开发语言·单片机·嵌入式硬件·fpga开发
远翔调光芯片^1382879887210 小时前
ECP5702能芯科技PD取电芯片在市场上的优势有哪些?
开发语言·人工智能·单片机·嵌入式硬件·智能家居
时空自由民.10 小时前
WSL解决USB 串口连接问题与linux串口权限问题
linux·单片机