定时器时钟来源可以从输入捕获引脚输入
外部时钟模式 和 输入捕获。
核心结论:
-
外部时钟模式的输入引脚 ≠ 输入捕获功能的输入引脚(通常情况):
-
外部时钟模式有专用的输入引脚 (ETR) 和可选的替代输入通道(如TI1, TI2)。
-
输入捕获功能有自己的专用输入通道引脚 (TIx, 如 TI1, TI2, TI3, TI4)。
-
-
是的,输入捕获引脚可以被“配置”为外部时钟模式的时钟源:
-
但关键在于,当你把一个输入捕获引脚(如TI1或TI2)配置为外部时钟模式的时钟源时,该引脚在该定时器上就不再执行输入捕获功能了。它的角色发生了转变。
-
详细解释:
-
外部时钟模式 (External Clock Mode) - 目的:为定时器提供计数时钟源
-
模式1 (ETR 引脚): 这是最常见的方式。定时器有一个专用的外部触发输入引脚 (ETR)。配置此模式后,定时器的计数器 (
CNT
) 会直接根据ETR引脚上的外部信号(经过预分频器和极性选择后)进行递增计数。这个ETR引脚是专门为外部时钟/触发设计的,它本身不是输入捕获通道。 -
模式2 (TIx 引脚): 高级定时器通常支持将某个输入通道(通常是TI1或TI2) 配置为外部时钟源。这是通过配置从模式控制器 (
SMS
位) 和输入选择寄存器 (TIMx_TISEL
或类似) 来实现的。-
当你选择这个模式(例如,选择TI1FP1作为触发源,并将从模式设为外部时钟模式1)时,TI1引脚上的信号(经过输入滤波器和边沿检测后产生的TI1FP1信号)就变成了定时器计数器的时钟源。
-
此时,TI1引脚的功能不再是“输入捕获”,它被“重定向”或“复用”为外部时钟输入引脚。 定时器无法再用这个引脚来捕获信号边沿并记录捕获寄存器的值(
CCRx
),因为它现在驱动着计数器。
-
-
-
输入捕获 (Input Capture) - 目的:测量外部信号的脉宽或周期
-
每个输入捕获通道(TI1, TI2, TI3, TI4)都有自己对应的GPIO引脚。
-
配置为输入捕获模式后,当该引脚上发生指定的边沿(上升沿、下降沿或双边沿)时,定时器当前的计数器值 (
CNT
) 会被自动捕获到对应的捕获/比较寄存器 (CCRx
) 中。 -
这个功能的核心是“捕获”当前时刻的计数值,用于后续计算信号特征。它不直接影响计数器的计数时钟源。
-
关系总结:
-
硬件引脚: ETR引脚、TI1引脚、TI2引脚等在物理上是不同的GPIO引脚。
-
功能独立性: 外部时钟模式(为计数器提供时钟)和输入捕获(记录信号边沿发生的时刻)是定时器内部两个独立的功能模块。
-
引脚复用/重定向:
-
ETR引脚只能用于外部触发/时钟输入(模式1),不能用于输入捕获。
-
TI1, TI2等引脚默认用于输入捕获功能(或PWM输出等)。
-
但是,在高级定时器的“外部时钟模式2”下,你可以选择将特定的TIx引脚(如TI1或TI2)配置为计数器的外部时钟源。
-
当TIx引脚被配置为外部时钟源时,它在该定时器上就失去了其作为输入捕获通道的功能。 它现在扮演的是“时钟输入”的角色。
-
-
不能同时使用: 对于同一个定时器的同一个TIx引脚,你无法让它同时作为外部时钟源(驱动计数器)又作为输入捕获通道(在信号边沿捕获计数器值)。 这两个功能在硬件上是互斥地使用该引脚。
简单来说:
-
专用时钟输入: 用ETR引脚(外部时钟模式1)。
-
复用时钟输入: 可以把TI1或TI2引脚“借”过来当外部时钟输入用(外部时钟模式2),但代价是这个引脚不能再做输入捕获了。
-
输入捕获: TIx引脚的本职工作是输入捕获(或输出比较等),除非你明确配置它去做外部时钟输入。