我用的是stm8l系列你自己找i/O口 设置为输出就可以
GPIO_Init(........);
void timerpwm_init(unsigned int tim2_setvalue, unsigned int tim2_dutyfactor)
{
CLK_PeripheralClockConfig(CLK_Peripheral_TIM2, ENABLE);//tim2提供时钟
TIM2_DeInit();//恢复默认设置
/* 定时器配置初始化 */
TIM2_TimeBaseInit(TIM2_Prescaler_128, TIM2_CounterMode_Up,tim2_setvalue );//16分频 向上计数 计数周期(自己设置)
/* 配置为PWM输出模式 */
TIM2_OC2Init(TIM2_OCMode_PWM1, TIM2_OutputState_Enable, tim2_dutyfactor, TIM2_OCPolarity_High, TIM2_OCIdleState_Set);
/* 使能定时器输出 */// pwm1 使能 占空比(自己设置)
TIM2_CtrlPWMOutputs(ENABLE);//使能Tim2pwm 输出
TIM2_ITConfig(TIM2_IT_Update,ENABLE);//可以产生中断 或者不产生 (DISABLE)
TIM2_Cmd(ENABLE);//使能tim2
}
|