定时时间的计算 与定时器寄存器初始化相关的数据结构在库文件“ stm32f10x_tim.h ”中: /* TIM Base Init structure definition */ typedef struct { u16 (1)/* 定时周期值: Period value */ u16 (2) /* 预分频因子: Prescaler value */ u16(3)/* 定时器分频因子: Timer clock division */ u16 (4)/* 定时器计数模式: Timer Counter mode */ } TIM_TimeBaseInitTypeDef; 定时器的定时时间主要取决于(5)和(6)。例如,当 TIM_Period 设为 (7) , TIM_Prescaler 设为(8) ,表示累计 36000 个脉冲频率后产生个更新或者中断(也是说定时时 间到),而脉冲频率是对 TIMxCLK 频率经过了 2000 分频。因此,定时时间 T 为: (9) 即 1s 溢出一次。注意: TIM_Period 和 TIM_Prescaler 这两个变量都是 (10) ,它们的取值范围是 0 ~ 65535 。