定时器初始化:
void TIM2_INIT(void)
{
TIM2_TimeBaseInit(TIM2_PRESCALER_16, 499);
TIM2_OC2Init(TIM2_OCMODE_TOGGLE, TIM2_OUTPUTSTATE_ENABLE,CCR1_Val, TIM2_OCPOLARITY_LOW);
TIM2_OC2PreloadConfig(ENABLE);
TIM2_ARRPreloadConfig(ENABLE);
TIM2_GenerateEvent(TIM2_EVENTSOURCE_UPDATE);
TIM2_Cmd(ENABLE);
}
端口初始化:
void GPIO_Config(void)
{
GPIO_Init(GPIOC, GPIO_PIN_5, GPIO_MODE_OUT_PP_LOW_SLOW); }
时钟:
void SCLK_Config(void)
{
CLK_DeInit(); //寄存器复位
CLK_HSICmd(ENABLE); //内部高速时钟使能
CLK_HSIPrescalerConfig(CLK_PRESCALER_HSIDIV1); //内部1分频16M
}
主函数:
void main(void)
{
SCLK_Config();
GPIO_Config();
TIM2_INIT();
while(1);
}
貌似定时器2一通道引脚一直是IO口初始化的电平,定时器没工作。求解释? |