⏱️ STM32 定时器 4.000 ms 计算:主频36MHz PSC=35 ARR=3999
工具计算永久页 · 服务端已算好结果,可收藏、可分享、可被搜索引擎收录
主频 fck=36 MHz,预分频 PSC=35,重装载 ARR=3999。
定时周期:4.000 ms(0.004000 秒)
中断频率:250 Hz
公式:定时周期 = (PSC+1) × (ARR+1) / fck
👁 4 次查看 · 2026-08-14 00:50 生成
// TIM2 基本定时中断(HAL 库生成)
// 定时 4.000 ms,中断频率 250.00Hz
// 主频 fck=36MHz PSC=35 ARR=3999
TIM_HandleTypeDef htim;
void MX_TIM2_Init(void){
__HAL_RCC_TIM2_CLK_ENABLE();
htim.Instance = TIM2;
htim.Init.Prescaler = 35; // PSC
htim.Init.CounterMode = TIM_COUNTERMODE_UP;
htim.Init.Period = 3999; // ARR
htim.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1;
HAL_TIM_Base_Init(&htim);
}
// 启动(在主函数调用)
HAL_TIM_Base_Start_IT(&htim);
// 定时中断回调(每 4.000 ms 执行一次)
void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim){
if (htim->Instance == TIM2) {
// TODO: 你的周期任务
}
}