关于PWM波输出的一个小问题。

2019-08-20 18:22发布

void TIM_CtrlPWMOutputs(TIM_TypeDef* TIMx, FunctionalState NewState),在进行PWM波输出配置的时候,遇到这个函数,不知道啥意思..而且我无论使能与否都有输出,Enables or disables the TIM peripheral Main Outputs. ST库是这样描述的,我有点疑惑,希望大伙帮忙解答一下,这个函数的具体作用是什么,

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
4条回答
xkwy
1楼-- · 2019-08-20 19:01
通过跟踪其库函数源码不难发现,其最终是为了操作TIM->BDTR[MOE]这个寄存器位,

b.png

它是主输出使能,相当于PWM输出的总开关,只有它有效,PWM才会有输出。

但是,这个功能只有在高级定时器(TIM1、TIM8)中才会有,
在其他定时器中根本找不到这个寄存器的(没有总开关,由各个分开关直接控制)

no.png

我猜测你使用的一定不是TIM1,所以这个位设置与否没什么用,
可以尝试一下使用TIM1,会有效果的



------不正经的分割线------

z (17).jpg
三支火把
2楼-- · 2019-08-20 22:32
明白,谢谢了,
不死鸟
3楼-- · 2019-08-20 23:14
xkwy 发表于 2016-3-8 15:37
通过跟踪其库函数源码不难发现,其最终是为了操作TIM->BDTR[MOE]这个寄存器位,

精彩的回答,尤其是分割线之后的!!
lc881214
4楼-- · 2019-08-21 04:51
帮顶。。。。。。。。。

一周热门 更多>