# 按键状态机与回调函数的封装思想

一、PWM配置

生成频率为1000HZ的PWM信号,占空比可调

1. CubeMX配置

  • 选择Internal(内部时钟)

根据CubeMX的芯片引脚图,选中引脚后的相关外设提示,可以便捷的配置定时器的作用通道

定时器PWM相关配置项

这里50有误,应该改为500——>对应50%的占空比

二、输入捕获

1. CubeMX配置

Slave Mode: Reset Mode

  • 从模式 (Slave Mode):在定时器中,“Slave Mode” 是指定时器可以被外部信号触发或由另一个定时器控制。定时器可以通过外部输入或其他定时器的输出信号来复位、启动或停止。

  • Reset Mode:在从模式的复位模式下,每当触发事件发生时,定时器的计数器(CNT寄存器)会被重置。这对于需要周期性重置定时器的应用很有用。

Trigger Source: TI1FP1

  • 触发源 (Trigger Source):TI1FP1 通常表示 “Timer Input 1 Filtered Pin 1”,即定时器通道1的输入引脚(TI1)的滤波信号。这个触发源指示定时器使用来自外部引脚的输入信号作为触发源。
  • TI1FP1 作为触发源意味着定时器的操作(如复位)将根据 TI1 引脚接收到的信号进行控制。

Clock Source: Internal Clock

  • 时钟源 (Clock Source):内部时钟意味着定时器使用微控制器内部的时钟源作为定时器的时间基准。通常,内部时钟是处理器的时钟或系统时钟(如 HCLKPCLK)。

  • 使用内部时钟意味着定时器的计数将基于微控制器的时钟频率进行递增,直到外部触发信号(例如 TI1FP1)复位它。

Channel1: Input Capture direct mode

  • 通道1 (Channel 1):配置为输入捕获模式意味着定时器的通道1正在监视一个外部信号(通过 TI1 引脚),并在检测到信号变化(如上升沿或下降沿)时捕获当前计数器值。

  • Direct mode:直通模式表示信号直接进入输入捕获模块,而没有通过滤波器或其他复杂处理。这通常用于快速响应输入捕获操作。

思考:为什么输入捕获要设置为从模式?

DMA转运TIM通道1数据

继续配置PA15

问题:通过输入捕获测出来频率可能为4000

解决方法:使用不同的定时器通道进行输入捕获