打印

GD32F330F4P6 TSSOP-20 定时器14做PWM无法输出

[复制链接]
983|5
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
本帖最后由 爱随缘2013 于 2020-9-28 12:42 编辑

我现在需要使用定时器14输出PWM也就是管脚PA2 TIM14_CH0,配置如下

定时器配置是从定时器2改来的,定时器2能输出PWM

IO配置

就是没有PWM波形,硬件没有没问题,我把PA2设置成IO口模式,可以输出高低电平,大家帮我看下谢谢了

使用特权

评论回复
评论
爱随缘2013 2020-9-28 14:41 回复TA
@zfazhan :我晕,确实没有,气死人真是 
zfazhan 2020-9-28 13:45 回复TA
关键它得有这个功能才行 
沙发
sonicll| | 2020-9-28 16:26 | 只看该作者
本帖最后由 sonicll 于 2020-9-28 16:28 编辑

建议你把timer_ocintpara这个结构体的赋值写完整试试,互补通道虽然没用到,最好也要赋个初始值,因为结构体临时变量,不给初始值的话,他的成员都是随机值而不是0,而这些随机值会影响寄存器的配置

timer_ocintpara.outputstate = TIMER_CCX_ENABLE;
timer_ocintpara.ocpolarity  = TIMER_OC_POLARITY_HIGH;
timer_ocintpara.ocidlestate = TIMER_OC_IDLE_STATE_LOW;
        
timer_ocintpara.outputnstate = TIMER_CCXN_DISABLE;        
timer_ocintpara.ocnpolarity  = TIMER_OCN_POLARITY_HIGH;
timer_ocintpara.ocnidlestate = TIMER_OCN_IDLE_STATE_LOW;

330的PA2,手册上写的是可以做TIME14_CH0的PWM输出的,你再看看程序,看看寄存器的值都对不对

使用特权

评论回复
板凳
爱随缘2013|  楼主 | 2020-9-28 17:59 | 只看该作者
sonicll 发表于 2020-9-28 16:26
建议你把timer_ocintpara这个结构体的赋值写完整试试,互补通道虽然没用到,最好也要赋个初始值,因为结构 ...

手册写的TSSOP-20脚只有定时器0,1,2,13,15,16没有14

使用特权

评论回复
地板
sonicll| | 2020-9-28 18:17 | 只看该作者
爱随缘2013 发表于 2020-9-28 17:59
手册写的TSSOP-20脚只有定时器0,1,2,13,15,16没有14

还真是没有TIMER14,但是28封装pin脚定义那个表格却写着TIMER14,误导用户啊

使用特权

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

本版积分规则

7

主题

18

帖子

0

粉丝