打印
[LKS32 软件]

MCPWM初始化中的MCPWM0_AUEN寄存器问题

[复制链接]
120|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
lugbomb|  楼主 | 2024-7-4 10:10 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我在用开发板调试的时候发现在MCPWM初始化时,函数void MCPWM_init(void)中有MCPWM_InitStructure.AUEN = MCPWM0_ALL_AUPDAT; /*自动加载使能*/。但是在MCPWM_Init(&MCPWM_InitStructure)中并没有MCPWM0_AUEN=MCPWM_InitStruct->AUEN这样的赋值。

因此,我在函数void MCPWM_init(void)中最后加入了MCPWM0_AUEN = MCPWM0_ALL_AUPDAT;
如:
/*************************MCPWM 12路PWM输出同步操作**********************************/
                MCPWM0_CNT0 = 0;    //清除CNT0计数器
                MCPWM0_CNT1 = 0;    //清除CNT1计数器
                MCPWM0_UPDATE |= (BIT11|BIT27);//手动加载CNT0和CNT1到所使用的影子寄存器
                MCPWM0_PRT = 0xDEAD;//解除写保护寄存器
                MCPWM0_AUEN = MCPWM0_ALL_AUPDAT;                        //添加行
                MCPWM0_TCLK |= BIT2;//MCPWM 工作时钟使能
                MCPWM0_PRT = 0x0;

但是,测试此时PWM信号未输出。未添加此行代码,则PWM信号能正常输出。
因此非常疑惑!

使用特权

评论回复
沙发
MYWX| | 2024-7-4 13:49 | 只看该作者
自动重装载不需要配置吧,配置的话会出现到达计数阈值的时刻,会触发对应的时间,执行相应的事件,你参考下07x系列的用户指导手册上面的表14-1

使用特权

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

本版积分规则

2

主题

3

帖子

0

粉丝