TIM_DeInit //恢复缺省配置
void TIM_DeInit(TIM_TypeDef* TIMx);
TIM_TimeBaseInit,//时基单元初始化
void TIM_TimeBaseInit(TIM_TypeDef* TIMx, TIM_TimeBaseInitTypeDef* TIM_TimeBaseInitStruct);
TIM_TimeBaseStructInit //这个函数可以把结构体变量赋给一个默认值
void TIM_TimeBaseStructInit(TIM_TimeBaseInitTypeDef* TIM_TimeBaseInitStruct);
TIM_Cmd //用来使能计数器的(运行控制),它有两个参数,第一个TIMx选择定时器,第二个NewState新的状态,也就是使能还是失能,使能,计数器就可以运行,失能,计数器就不运行
void TIM_Cmd(TIM_TypeDef* TIMx, FunctionalState NewState);
TIM_ITConfig,这个是用来使能中断输出信号的,第一个TIMx选择定时器,第二个TIM_IT,选择要配置哪个中断输出,第三个NewState新的状态,也就是使能还是失能,使能,ITConfig函数,就是使能外设的中断输出
void TIM_ITConfig(TIM_TypeDef* TIMx, uint16_t TIM_IT, FunctionalState NewState);
//时基单元的时钟选择部分:RCC内部时钟,ETR外部时钟,ITRx其他定时器,TIx捕获通道
TIM_InternalClockConfig //选择内部时钟,调用一下,这里的连接就是这样的
void TIM_InternalClockConfig(TIM_TypeDef* TIMx);
TIM_ITRxExternalClockConfig //选择ITRx其他定时器的时钟,选择ITRx其他定时器的时钟,参数是TIMx,选择要配置的定时器和InputTriggerSource,选择要接入哪个其他的定时器
void TIM_ITRxExternalClockConfig(TIM_TypeDef* TIMx, uint16_t TIM_InputTriggerSource);
TIM_TIxExternalClockConfig //选择TIx捕获通道的时钟,第一个TIMx选择定时器,第二个TIxExternalCLKSource,选择TIx具体的某个引脚,接着还有两个参数ICPolarity和ICFilter,输入的极性和滤波器,对于外部引脚的波形,一般都会有极性选择和滤波器,这样更灵活一些
void TIM_TIxExternalClockConfig(TIM_TypeDef* TIMx, uint16_t TIM_TIxExternalCLKSource, uint16_t TIM_ICPolarity, uint16_t ICFilter);
TIM_ETRClockMode1Config //选择ETR通过外部时钟模式1输入的时钟,ExtTRGPrescaler,外部触发预分频器,这里可以对ETR的外部时钟再提前做一个分频。然后接下来Polarity和Filter,也是一样的,极性和滤波器
void TIM_ETRClockMode1Config (TIM_TypeDef* TIMx, uint16_t TIM_ExtTRGPrescaler, uint16_t TIM_ExtTRGPolarity,uint16_t ExtTRGFilter);
TIM_ETRClockMode2Config //选择ETR通过外部时钟模式2输入的时钟
void TIM_ETRClockMode2Config(TIM_TypeDef* TIMx, uint16_t TIM_ExtTRGPrescaler, uint16_t TIM_ExtTRGPolarity, uint16_t ExtTRGFilter);
//对于ETR输入的外部时钟而言,这两个函数是等效的
TIM_ETRConfig //这个不是用来选择时钟的,就是单独用来配置ETR引脚的预分频器、极性、滤波器这些参数的
void TIM_ETRConfig(TIM_TypeDef* TIMx, uint16_t TIM_ExtTRGPrescaler, uint16_t TIM_ExtTRGPolarity,uint16_t ExtTRGFilter);
TIM_PrescalerConfig//单独写预分频值的,Prescaler,就是要写入的预分频值,PSCReloadMode,写入的模式,预分频器有一个缓冲器,写入的值是在更新事件发生后才有效的
void TIM_PrescalerConfig