TI中文支持网
TI专业的中文技术问题搜集分享网站

关于EPWM模块的时基阴影寄存器

        在28335DSP的EPWM模块中,有一个时基子模块,它具有一个时基周期寄存器TBPRD。

        在关于TBPRD阴影寄存器的问题上不太明白:

1、为什么需要一个阴影寄存器?

2、“Shadowing allows the register update to be synchronized with the hardware”  阴影寄存器与硬件同步? 在什么过程中它们需要同步?

3、“This prevents corruption or spurious operation due to the register being asynchronously modified by software.”  异步修改寄存器或者软件修改可能导致错误,那么DSP的所有寄存器不都是需要用软件修改的么?   那不是都是容易导致错误的? 为什么只有TBPRD用阴影寄存器呢?

 

求解……

Johnson Chen1:

楼主你好!

关于shadow寄存器其实不是只有TBPRD才有,CMPA和CMPB也有。

使用影子寄存器的好处在于可以设定何时将shadow寄存器更新到Active寄存器中,如果没有shadow寄存器的话,将会是你写完TBPRD或者CMPA/CMPB后就立即就生效。

而在实时控制中,算法大多数都是基于载波控制周期,因此当前控制周期计算的周期或者比较值是在下一个载波周期中使用,而不希望当前控制周期很没完,又重新更新比较值或者周期值,因此是有shadow 就非常有方便实现这一点。如可以设置shadow寄存器在TBTCR等于周期或者0时更新到active及寄存器中。

如果你的应用中不需要shadow功能的话,也可以在软件里选择立即生效模式从而不是有这个功能。

赞(0)
未经允许不得转载:TI中文支持网 » 关于EPWM模块的时基阴影寄存器
分享到: 更多 (0)