Advanced-control timer
TIM1 TIM8
TIM8 is not available in STM32F411xC/E.
Clock selection 时钟选择 | ||
Internal clock (CK_INT) |
内部时钟 (CK_INT), 来自 APB总线 |
|
External clock mode1: external input pin |
外部时钟模式 1:外部输入引脚 来自CH1,CH2 ED:双边沿检测(edge detector) |
|
External clock mode2: external trigger input ETR | 外部时钟模式 2:外部触发输入 ETR | |
Internal trigger inputs (ITRx) | 内部触发输入 (ITRx):定时器级联 |
External clock source mode 1 外部时钟源模式1 |
TI2 连接示例 要使递增计数器在 TI2 输入出现上升沿时计数,请执行以下步骤: |
通过在 TIMx_CCMR1 寄存器中写入 CC2S =“01”来配置通道 2,使其能够检测 TI2 输入的上升沿 |
通过在 TIMx_CCMR1 寄存器中写入 IC2F[3:0] 位来配置输入滤波时间(如果不需要任 何滤波,请保持 IC2F=0000 |
通过在 TIMx_CCER 寄存器中写入 CC2P=0 和 CC2NP=0 来选择上升沿极性 |
通过在 TIMx_SMCR 寄存器中写入 SMS=111,使定时器在外部时钟模式 1 下工作。 |
通过在 TIMx_SMCR 寄存器中写入 TS=110 来选择 TI2 作为触发输入源 |
通过在 TIMx_CR1 寄存器中写入 CEN=1 来使能计数器 |
当 TI2 出现上升沿时,计数器便会计数一次并且 TIF 标志置 1 TI2 的上升沿与实际计数器时钟之间的延迟是由于 TI2 输入的重新同步电路引起的 |
External clock source mode 2 外部时钟源模式2 |
外部触发输入
要使递增计数器在 ETR 每出现 2 个上升沿时计数,请执行以下步骤: |
由于此例中不需滤波器,因此在 TIMx_SMCR 寄存器中写入 ETF[3:0]=0000 |
通过在 TIMx_SMCR 寄存器中写入 ETPS[1:0]=01 来设置预分频器 |
通过在 TIMx_SMCR 寄存器中写入 ETP=0 来选择 ETR 引脚的上升沿检测 |
通过在 TIMx_SMCR 寄存器中写入 ECE=1 来使能外部时钟模式 2 |
通过在 TIMx_CR1 寄存器中写入 CEN=1 来使能计数器 |
ETR 每出现 2 个上升沿,计数器计数一次 ETR 的上升沿与实际计数器时钟之间的延迟是由于 ETRP 信号的重新同步电路引起的 |
标签:control,TIMx,写入,timer,计数器,TI2,寄存器,Advanced,时钟 From: https://www.cnblogs.com/Yannnnnn/p/17639223.html