定時器的基本設置
1、TIM_TimeBaseStructure.TIM_Prescaler = 0x0;//時鐘預分頻數 例如:時鐘頻率=72/(時鐘預分頻+1)
2、TIM_TimeBaseStructure.TIM_CounterMode = TIM1_CounterMode_Up; //定時器模式 向上計數
3、TIM_TimeBaseStructure.TIM_Period = 0xFFFF; // 自動重裝載寄存器週期的值(定時時間) 累計 0xFFFF個頻率後產生個更新或者中斷(也是說定時時間到)
4、TIM_TimeBaseStructure.TIM_ClockDivision = 0x0; //時間分割值
5、TIM_TimeBaseInit(TIM2, &TIM_TimeBaseStructure);//初始化定時器2
6、TIM_ITConfig(TIM2, TIM_IT_Update, ENABLE); //打開中斷 溢出中斷
7、TIM_Cmd(TIM2, ENABLE);//打開定時器
此外要記住一定要打開定時器的時鐘(RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM2, ENABLE);),定時器的頻率的可以編程的,有對應的模式設置和中斷處理。