打印

GD32E230C8T6 高级定时器timer0无法正常输出PWM波形

[复制链接]
3812|16
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
图图很糊涂|  楼主 | 2024-5-2 18:08 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
原本想用高级定时器的中央对齐计数模式来输出SPWM波,但是TIMER0的CH0,CH1等口,都无法正常输出PWM波形,换成普通定时器就可以了,STM32里对于高级定时器输出PWM波形,需要多加一个TIM_CtrlPWMOutputs函数,但是我看了GD32固件库函数,没有类似的,我怀疑是这个问题,有无大佬解答一下啊

使用特权

评论回复
沙发
zeshoufx| | 2024-5-6 09:49 | 只看该作者
高级定时器需要打开主输出

使用特权

评论回复
板凳
埃娃| | 2024-5-15 23:29 | 只看该作者
你这是没配置好吧

使用特权

评论回复
地板
suw12q| | 2024-6-7 11:52 | 只看该作者
对于GD32芯片的高级定时器输出PWM波形的问题,我可以给您一些建议。首先,请确保您已经正确配置了高级定时器的中央对齐计数模式,并且已经正确配置了通道的输出模式和极性

使用特权

评论回复
5
y1n9an| | 2024-6-7 13:04 | 只看该作者
我觉得GD32芯片的固件库可能没有提供与STM32相同的TIM_CtrlPWMOutputs函数,但是您可以手动实现类似的功能

使用特权

评论回复
6
tax2r6c| | 2024-6-7 14:08 | 只看该作者
您可以尝试手动设置定时器的输出比较控制寄存器(OCxCR)中的OCxPE(输出比较x预装载使能)和OCxM(输出比较模式)位,以及使能定时器的输出比较通道。这些操作可以在您的代码中直接访问寄存器来完成

使用特权

评论回复
7
lamanius| | 2024-6-7 15:21 | 只看该作者
建议您还可以查阅GD32芯片的参考手册和技术资料,以获取更详细的关于高级定时器输出PWM波形的配置和控制的信息

使用特权

评论回复
8
l1uyn9b| | 2024-6-7 16:17 | 只看该作者
那你加一下?自己写一个也是可以的吧

使用特权

评论回复
9
d1ng2x| | 2024-6-7 19:12 | 只看该作者
你是不是没用高级定时器啊?

使用特权

评论回复
10
su1yirg| | 2024-6-8 07:16 | 只看该作者
一般PWM输出得看你的定时器是否支持的

使用特权

评论回复
11
b5z1giu| | 2024-6-8 08:12 | 只看该作者
其实用IO的高低电平翻转应该也是OK的吧

使用特权

评论回复
12
liu96jp| | 2024-6-8 10:06 | 只看该作者
那你换成普通定时器呗,既然普通定时器都是好使的

使用特权

评论回复
13
cen9ce| | 2024-6-8 11:30 | 只看该作者
你可能是按照ST的逻辑弄了,其实你看官方的例程看看?是否能直接实现呗

使用特权

评论回复
14
FranklinUNK| | 2024-6-20 18:52 | 只看该作者
是不是输出没有配置啊

使用特权

评论回复
15
9dome猫| | 2024-6-30 23:15 | 只看该作者
一般PWM输出得看你的定时器是否支持的

使用特权

评论回复
16
大鹏2365| | 2024-6-30 23:23 | 只看该作者
在 STM32 中,确实需要调用 TIM_CtrlPWMOutputs 函数来使能 PWM 输出,但在 GD32 的固件库中,这个函数可能有不同的实现方式或者不需要显式调用。

使用特权

评论回复
17
大鹏2365| | 2024-6-30 23:23 | 只看该作者
在 GD32 的固件库中,确保正确配置定时器的计数模式、通道输出模式和比较值后,定时器应该能够自动开始生成 PWM 信号,无需额外调用使能函数来激活 PWM 输出。

使用特权

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

本版积分规则

1

主题

1

帖子

0

粉丝