找回密码
 立即注册

QQ登录

只需一步,快速开始

打印 上一主题 下一主题
开启左侧

请教关于EPWM accumulator的疑问!

[复制链接]
跳转到指定楼层
楼主
匿名  发表于 2023-10-10 20:41:41 |只看大图 回帖奖励 |倒序浏览 |阅读模式
    EPWM_EnableAcc(EPWM1, 0, 10, EPWM_IFA_ZERO_POINT);
这个是控制自动产生10个累加器然后自动关闭PWM输出吗?

void EPWM1P0_IRQHandler(void)
{
    EPWM_ClearAccInt(EPWM1, 0);
}


试验了一下 貌似又无法实现!

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 顶 踩
回复

使用道具

沙发
匿名  发表于 2023-10-10 21:58:58
这样的好处,是不是可以避免重复的产生中断,可以达到控制脉冲个数的应用?例如控制PWM转动的角度,避免多次进入PWM中断?
回复 支持 反对

使用道具

板凳
wangjiahao88 发表于 2023-10-11 11:00:19 | 只看该作者
我在使用的时候,测试PWM ACC的例程,出现的是反复打印输出了;请问这个是不是不正常的现象?

ACC.png (268.28 KB, 下载次数: 334)

ACC.png
回复 支持 反对

使用道具 举报

地板
wangjiahao88 发表于 2023-10-11 17:29:14 | 只看该作者
这个问题 得到验证的是:
BSP包的例程,在M467,M483KGCAE2A,M483KGCAE,这些物料,都不会存在问题。
在M483KIDAE会出问题。
回复 支持 反对

使用道具 举报

5#
wangjiahao88 发表于 2023-10-11 17:44:09 | 只看该作者
支持EPWM输出累加器停止计数器模式 (M48xGC/M48xE8)
回复 支持 反对

使用道具 举报

6#
wangjiahao88 发表于 2023-10-11 17:44:40 | 只看该作者
其,他,型,号,不,支,持
回复 支持 反对

使用道具 举报

7#
匿名  发表于 2023-10-11 19:43:45
void EPWM_EnableAcc(EPWM_T *epwm, uint32_t u32ChannelNum, uint32_t u32IntFlagCnt, uint32_t u32IntAccSrc)
{
    (epwm)->IFA[u32ChannelNum] = (((epwm)->IFA[u32ChannelNum] & ~((EPWM_IFA0_IFACNT_Msk | EPWM_IFA0_IFASEL_Msk))) | \
                                  (EPWM_IFA0_IFAEN_Msk | (u32IntAccSrc << EPWM_IFA0_IFASEL_Pos) | u32IntFlagCnt) );
}

这个函数,如果要一次性发送 >65536个脉冲,可以修改吗?
回复 支持 反对

使用道具

8#
chrishu 发表于 2023-10-12 13:51:58 | 只看该作者
M480系列的(M48xGC/M48xE8)才支持累加器停止功能。都支持累加中断功能,累加中断可以减少进中断的次数。累加计数器是16位的,最大只能到65535  
回复 支持 反对

使用道具 举报

高级模式
B Color Image Link Quote Code Smilies |上传

本版积分规则

新唐MCU