STM8S PWM输出停止后 IO口电平输出
2017-02-07 来源:eefocus
STM8S有许多定时器支持PWM输出,但在停止定时器后,IO口电平到底是多少呢?或高或低。
因此,为了确定PWM停止输出电平后其对应的值是多少,我们在停止PWM输出时需要对CCMR1寄存器进行设置。
例如,
TIM2_Cmd(DISABLE);
/*停止PWM后将电平拉为低电平*/
TIM2_ForcedOC1Config(TIM2_FORCEDACTION_INACTIVE);
GPIO_WriteLow(GPIOC, GPIO_PIN_5);
即可。
恢复时候需要重新将定时器初始化
TIM2_DeInit();
TIM2_TimeBaseInit(TIM2_PRESCALER_16,uFreq);
TIM2_OC1Init(TIM2_OCMODE_PWM1, TIM2_OUTPUTSTATE_ENABLE, uFreq / 2, TIM2_OCPOLARITY_HIGH);
若直接调用
TIM2_OC1Init(TIM2_OCMODE_PWM1, TIM2_OUTPUTSTATE_ENABLE, uFreq / 2, TIM2_OCPOLARITY_HIGH);
是不会产生PWM输出的。
上一篇:STM8S TIM1时钟分频
相关文章
- STM8S 使用IAR在线调试配置
- IAR FOR STM8S 错误 An error occurred while retrieving GDI features: gdi-error [40201]解决方法
- STM8S定时器操作
- IAR调试STM8S遇到函数返回值错误的问题
- STM8S 定时器第一次使用时间不准确的问题
- 解决stm8s配置timer2中断时间不准
- STM8S被设定读保护的芯片如何解除读保护,重新下载程序
- STM8S单片机红外接收解码程序 带1602显示
- stm8 stm8s stm8af 485接口 modbus协议代码
- STM8S学习笔记之三(STM8 SysClk)