打印
[STM32F0]

stm32f051c8t6产生6路互补PWM

[复制链接]
626|21
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
jiahy|  楼主 | 2020-12-15 23:45 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
如何关掉任意一路?

使用特权

评论回复
沙发
shimx| | 2020-12-15 23:49 | 只看该作者

TIM1->CCER=0;
这样就全都关掉了;

使用特权

评论回复
板凳
jiahy|  楼主 | 2020-12-15 23:52 | 只看该作者

这个我知道,问题是我想只关掉一路。就是上下两桥臂都输出低电平。
TIM_CCxCmd(TIM1, TIM_Channel_1, TIM_CCx_Disable);
TIM_CCxNCmd(TIM1, TIM_Channel_1, TIM_CCxN_Disable);
我用这两个函数后,结果是一个高一个低,不能同时为低

使用特权

评论回复
地板
liliang9554| | 2020-12-15 23:55 | 只看该作者
你这个是把OCx和OCxN输出使能禁止了吧,这样他们输出到底是多少是不确定的,要确保关掉必须使他们都输出低电平。

使用特权

评论回复
5
香水城| | 2020-12-16 08:17 | 只看该作者
你可以参考下面这篇**的做法,

STM32定时器停止PWM输出时的电平话题

使用特权

评论回复
6
午夜粪车| | 2020-12-16 18:58 | 只看该作者
把OCx和OCxN输出使能禁止      这个办法是可行的.

使用特权

评论回复
7
huangchui| | 2020-12-16 19:02 | 只看该作者
不过这里要特别注意一点, 关掉 OCx 后, OCxN 要翻转哦, 否则信号不正常了.

使用特权

评论回复
8
heweibig| | 2020-12-16 19:06 | 只看该作者
把PWM的相关口设置成普通的IO,再进行IO操作?

使用特权

评论回复
9
lizye| | 2020-12-16 19:09 | 只看该作者
你好,请问你想关掉互补PWM的任意一路,问题解决了吗?可否指导下,我现在也遇到相同的问题。谢谢

使用特权

评论回复
10
lizye| | 2020-12-16 19:12 | 只看该作者
可以一个的CCRx设置成0,另一个的设置成最大,就一高一低了。

使用特权

评论回复
11
heweibig| | 2020-12-16 19:18 | 只看该作者
TIM_CCxCmd与TIM_CCxNCmd使能后两个是一个高一个低。这是怎么回事还是本来这两个就是相反的。。。。。

使用特权

评论回复
12
juventus9554| | 2020-12-16 19:21 | 只看该作者
OCx和OCxN输出使能禁止

使用特权

评论回复
13
zhuww| | 2020-12-16 19:24 | 只看该作者
可以单独关掉一路的

使用特权

评论回复
14
huanghuac| | 2020-12-16 19:27 | 只看该作者
当然可以了  要不然就没法弄了

使用特权

评论回复
15
zhuhuis| | 2020-12-16 19:31 | 只看该作者
每一路都应该有相应的标志位使能或者说是开启

使用特权

评论回复
16
jiahy|  楼主 | 2020-12-16 19:38 | 只看该作者
搞定了,呵呵,犯了低级错误……多谢各位

使用特权

评论回复
17
香水城| | 2021-1-2 22:38 | 只看该作者
heweibig 发表于 2020-12-16 19:18
TIM_CCxCmd与TIM_CCxNCmd使能后两个是一个高一个低。这是怎么回事还是本来这两个就是相反的。。。。。
...

这是基于默认配置,如果选择不同的极性,可以输出一样的信号,具体要结合硬件需求来配置。

使用特权

评论回复
18
观海| | 2021-1-10 19:07 | 只看该作者
直接关掉使能可以吗

使用特权

评论回复
19
guanjiaer| | 2021-1-10 19:09 | 只看该作者
当然可以单独关掉一路了

使用特权

评论回复
20
heimaojingzhang| | 2021-1-10 19:11 | 只看该作者
必须可以啊 要不然怎么工作啊

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

862

主题

9861

帖子

4

粉丝