最近在折腾STM8,边学边用,发现自己很多不懂的啊,
写这篇博客记录一下这几天使用PWM给电机调速的心得,也为以后再次使用留个技术存档。
1.初始化定时器
TIM2_TimeBaseInit(TIM2_PRESCALER_16, 0x2000);// 0x2000代表pwm矩阵波的周期,数字越大,周期越长。
2.设置PWM模式、输出比较极性以及占空比等
TIM2_OC1Init(TIM2_OCMODE_PWM1, TIM2_OUTPUTSTATE_ENABLE, TIM2_Pulse, TIM2_OCPOLARITY_HIGH); //若为PWM1,输出比较极性为高,那么占空比越大,高电平在周期内的时间就越长;
TIM2_OC1PreloadConfig(ENABLE);
3.使能定时器
TIM2_Cmd(ENABLE);
注意:若是使用的引脚的可选功能(引脚带 [ ] 的功能,则需要先使用STVP工具配置一下OPTION BYTE,具体怎么配,看datasheet)。