24 STM32标准库函数 之 通用定时器(TIM)-- F -- 所有函数的介绍及使用

1 通用定时器(TIM)预览

函数名描述
TIM_DeInit将外设 TIMx 寄存器重设为缺省值
TIM_TimeBaseInit根据TIM_TimeBaseInitStruct 中指定的参数初始化TIMx 的时间基数单位
TIM_OCInit根据 TIM_OCInitStruct 中指定的参数初始化外设 TIMx
TIM_ICInit根据 TIM_ICInitStruct 中指定的参数初始化外设 TIMx
TIM_TimeBaseStructInit把 TIM_TimeBaseInitStruct 中的每一个参数按缺省值填入
TIM_OCStructInit把 TIM_OCInitStruct 中的每一个参数按缺省值填入
TIM_ICStructInit把 TIM_ICInitStruct 中的每一个参数按缺省值填入
TIM_Cmd使能或者失能 TIMx 外设
TIM_ITConfig使能或者失能指定的 TIM 中断
TIM_DMAConfig设置 TIMx 的 DMA 接口
TIM_DMACmd使能或者失能指定的 TIMx 的 DMA 请求
TIM_InternalClockConfig设置 TIMx 内部时钟
TIM_ITRxExternalClockConfig设置 TIMx 内部触发为外部时钟模式
TIM_TIxExternalClockConfig设置 TIMx 触发为外部时钟
TIM_ETRClockMode1Config配置 TIMx 外部时钟模式 1
TIM_ETRClockMode2Config配置 TIMx 外部时钟模式 2
TIM_ETRConfig配置 TIMx 外部触发
TIM_SelectInputTrigger选择 TIMx 输入触发源
TIM_PrescalerConfig设置 TIMx 预分频
TIM_CounterModeConfig设置 TIMx 计数器模式
TIM_ForcedOC1Config置 TIMx 输出 1 为活动或者非活动电平
TIM_ForcedOC2Config置 TIMx 输出 2 为活动或者非活动电平
TIM_ForcedOC3Config置 TIMx 输出 3 为活动或者非活动电平
TIM_ForcedOC4Config置 TIMx 输出 4 为活动或者非活动电平
TIM_ARRPreloadConfig使能或者失能 TIMx 在 ARR 上的预装载寄存器
TIM_SelectCCDMA选择 TIMx 外设的捕获比较 DMA 源
TIM_OC1PreloadConfig使能或者失能 TIMx 在 CCR1 上的预装载寄存器
TIM_OC2PreloadConfig使能或者失能 TIMx 在 CCR2 上的预装载寄存器
TIM_OC3PreloadConfig使能或者失能 TIMx 在 CCR3 上的预装载寄存器
TIM_OC4PreloadConfig使能或者失能 TIMx 在 CCR4 上的预装载寄存器
TIM_OC1FastConfig设置 TIMx 捕获比较 1 快速特征
TIM_OC2FastConfig设置 TIMx 捕获比较 2 快速特征
TIM_OC3FastConfig设置 TIMx 捕获比较 3 快速特征
TIM_OC4FastConfig设置 TIMx 捕获比较 4 快速特征
TIM_ClearOC1Ref在一个外部事件时清除或者保持 OCREF1 信号
TIM_ClearOC2Ref在一个外部事件时清除或者保持 OCREF2 信号
TIM_ClearOC3Ref在一个外部事件时清除或者保持 OCREF3 信号
TIM_ClearOC4Ref在一个外部事件时清除或者保持 OCREF4 信号
TIM_UpdateDisableConfig使能或者失能 TIMx 更新事件
TIM_EncoderInterfaceConfig设置 TIMx 编码界面
TIM_GenerateEvent设置 TIMx 事件由软件产生
TIM_OC1PolarityConfig设置 TIMx 通道 1 极性
TIM_OC2PolarityConfig设置 TIMx 通道 2 极性
TIM_OC3PolarityConfig设置 TIMx 通道 3 极性
TIM_OC4PolarityConfig设置 TIMx 通道 4 极性
TIM_UpdateRequestConfig设置 TIMx 更新请求源
TIM_SelectHallSensor使能或者失能 TIMx 霍尔传感器接口
TIM_SelectOnePulseMode设置 TIMx 单脉冲模式
TIM_SelectOutputTrigger选择 TIMx 触发输出模式
TIM_SelectSlaveMode选择 TIMx 从模式
TIM_SelectMasterSlaveMode设置或者重置 TIMx 主/从模式
TIM_SetCounter设置 TIMx 计数器寄存器值
TIM_SetAutoreload设置 TIMx 自动重装载寄存器值
TIM_SetCompare1设置 TIMx 捕获比较 1 寄存器值
TIM_SetCompare2设置 TIMx 捕获比较 2 寄存器值
TIM_SetCompare3设置 TIMx 捕获比较 3 寄存器值
TIM_SetCompare4设置 TIMx 捕获比较 4 寄存器值
TIM_SetIC1Prescaler设置 TIMx 输入捕获 1 预分频
TIM_SetIC2Prescaler设置 TIMx 输入捕获 2 预分频
TIM_SetIC3Prescaler设置 TIMx 输入捕获 3 预分频
TIM_SetIC4Prescaler设置 TIMx 输入捕获 4 预分频
TIM_SetClockDivision设置 TIMx 的时钟分割值
TIM_GetCapture1获得 TIMx 输入捕获 1 的值
TIM_GetCapture2获得 TIMx 输入捕获 2 的值
TIM_GetCapture3获得 TIMx 输入捕获 3 的值
TIM_GetCapture4获得 TIMx 输入捕获 4 的值
TIM_GetCounter获得 TIMx 计数器的值
TIM_GetPrescaler获得 TIMx 预分频值
TIM_GetFlagStatus检查指定的 TIM 标志位设置与否
TIM_ClearFlag清除 TIMx 的待处理标志位
TIM_GetITStatus检查指定的 TIM 中断发生与否
TIM_ClearITPendingBit清除 TIMx 的中断待处理位

1.63 TIM_GetCapture1

函数名TIM_GetCapture1
函数原形u16 TIM_GetCapture1(TIM_TypeDef* TIMx)
功能描述获得 TIMx 输入捕获 1 的值
输入参数TIMx:x 可以是 2,3 或者 4,来选择 TIM 外设
输出参数
返回值输入捕获 1 的值
先决条件
被调用函数

例:
/* Gets the Input Capture 1 value of the TIM2 */ u16 ICAP1value = TIM_GetCapture1(TIM2);

1.64 TIM_GetCapture2

函数名TIM_GetCapture2
函数原形u16 TIM_GetCapture2(TIM_TypeDef* TIMx)
功能描述获得 TIMx 输入捕获 1 的值
输入参数TIMx:x 可以是 2,3 或者 4,来选择 TIM 外设
输出参数
返回值输入捕获 1 的值
先决条件
被调用函数

例:
/* Gets the Input Capture 1 value of the TIM2 */ u16 ICAP1value = TIM_GetCapture2(TIM2);

1.65 TIM_GetCapture3

函数名TIM_GetCapture3
函数原形u16 TIM_GetCapture3(TIM_TypeDef* TIMx)
功能描述获得 TIMx 输入捕获 1 的值
输入参数TIMx:x 可以是 2,3 或者 4,来选择 TIM 外设
输出参数
返回值输入捕获 1 的值
先决条件
被调用函数

例:
/* Gets the Input Capture 1 value of the TIM2 */ u16 ICAP1value = TIM_GetCapture3(TIM2);

1.66 TIM_GetCapture4

函数名TIM_GetCapture4
函数原形u16 TIM_GetCapture4(TIM_TypeDef* TIMx)
功能描述获得 TIMx 输入捕获 1 的值
输入参数TIMx:x 可以是 2,3 或者 4,来选择 TIM 外设
输出参数
返回值输入捕获 1 的值
先决条件
被调用函数

例:
/* Gets the Input Capture 1 value of the TIM2 */ u16 ICAP1value = TIM_GetCapture4(TIM2);

1.67 TIM_GetCounter

函数名TIM_GetCounter
函数原形u16 TIM_GetCounter(TIM_TypeDef* TIMx)
功能描述获得 TIMx 计数器的值
输入参数TIMx:x 可以是 2,3 或者 4,来选择 TIM 外设
输出参数
返回值计数器的值
先决条件
被调用函数

例:
/* Gets TIM2 counter value */
u16 TIMCounter = TIM_GetCounter(TIM2);

1.68 TIM_GetPrescaler

函数名TIM_GetPrescaler
函数原形u16 TIM_GetPrescaler(TIM_TypeDef* TIMx)
功能描述获得 TIMx 预分频值
输入参数TIMx:x 可以是 2,3 或者 4,来选择 TIM 外设
输出参数
返回值预分频的值
先决条件
被调用函数

例:
/* Gets TIM2 prescaler value */
u16 TIMPrescaler = TIM_GetPrescaler(TIM2);

1.69 TIM_GetFlagStatus

函数名TIM_GetFlagStatus
函数原形FlagStatus TIM_GetFlagStatus(TIM_TypeDef* TIMx, u16 TIM_FLAG)
功能描述检查指定的 TIM 标志位设置与否
输入参数1TIMx:x 可以是 2,3 或者 4,来选择 TIM 外设
输入参数2TIM_FLAG:待检查的 TIM 标志位
参阅 Section:TIM_FLAG 查阅更多该参数允许取值范围
输出参数
返回值TIM_FLAG 的新状态(SET 或者 RESET)
先决条件
被调用函数
TIM_FLAG描述
TIM_FLAG_UpdateTIM 更新标志位
TIM_FLAG_CC1TIM 捕获/比较 1 标志位
TIM_FLAG_CC2TIM 捕获/比较 2 标志位
TIM_FLAG_CC3TIM 捕获/比较 3 标志位
TIM_FLAG_CC4TIM 捕获/比较 4 标志位
TIM_FLAG_TriggerTIM 触发标志位
TIM_FLAG_CC1OFTIM 捕获/比较 1 溢出标志位
TIM_FLAG_CC2OFTIM 捕获/比较 2 溢出标志位
TIM_FLAG_CC3OFTIM 捕获/比较 3 溢出标志位
TIM_FLAG_CC4OFTIM 捕获/比较 4 溢出标志位

例:
/* Check if the TIM2 Capture Compare 1 flag is set or reset */ if(TIM_GetFlagStatus(TIM2, TIM_FLAG_CC1) == SET)
{

}

1.70 TIM_ClearFlag

函数名TIM_ClearFlag
函数原形void TIM_ClearFlag(TIM_TypeDef* TIMx, u32 TIM_FLAG)
功能描述清除 TIMx 的待处理标志位
输入参数 1TIMx:x 可以是 2,3 或者 4,来选择 TIM 外设
输入参数 2TIM_FLAG:待清除的 TIM 标志位
输出参数
返回值
先决条件
被调用函数

例:
/* Clear the TIM2 Capture Compare 1 flag */ TIM_ClearFlag(TIM2, TIM_FLAG_CC1);

1.71 TIM_GetITStatus

函数名TIM_GetITStatus
函数原形ITStatus TIM_GetITStatus(TIM_TypeDef* TIMx, u16 TIM_IT)
功能描述检查指定的 TIM 中断发生与否
输入参数 1TIMx:x 可以是 2,3 或者 4,来选择 TIM 外设
输入参数 2TIM_IT:待检查的 TIM 中断源
输出参数
返回值TIM_IT 的新状态
先决条件
被调用函数

例:
/* Check if the TIM2 Capture Compare 1 interrupt has occured or not
*/
if(TIM_GetITStatus(TIM2, TIM_IT_CC1) == SET)
{
}

1.72

函数名TIM_ClearITPendingBit
函数原形void TIM_ClearITPendingBit(TIM_TypeDef* TIMx, u16 TIM_IT)
功能描述清除 TIMx 的中断待处理位
输入参数 1TIMx:x 可以是 2,3 或者 4,来选择 TIM 外设
输入参数 2TIM_IT:待检查的 TIM 中断待处理位
输出参数
返回值
先决条件
被调用函数

例:
/* Clear the TIM2 Capture Compare 1 interrupt pending bit */ TIM_ClearITPendingBit(TIM2, TIM_IT_CC1);

该文档修改记录:

修改时间修改说明
2024年3月23日第一次发布,介绍了STM32标准库函数 之 通用定时器(TIM)-- F-- 所有函数的介绍及使用

总结

以上就是 23 STM32标准库函数 之 通用定时器(TIM)-- F – 所有函数的介绍及使用的内容。
有不明白的地方欢迎留言;有建议欢迎留言,我后面编写文档好改进。
创作不容,如果文档对您有帮助,记得给个赞。

  • 10
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

常驻客栈

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值