This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] MSPM0G3507:在中心对齐模式下、RISEDELAY 超过 PWM 周期时的 TIMA 死区行为

Guru**** 2893300 points

Other Parts Discussed in Thread: MSPM0G3507

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/1641832/mspm0g3507-tima-deadband-behavior-when-risedelay-exceeds-pwm-cycle-in-center-aligned-mode

器件型号: MSPM0G3507

您好、
我有一个有关 MSPM0G 系列中 TIMA 模块在使用死区插入时的行为的问题。
 
配置:
  • 器件:MSPM0G3507
  • 计时器:TIMA
  • 模式:中心对齐 PWM
  • 已启用互补输出
  • 模式 1
问题:
在该配置中、CCP0N 输出边沿基于 CCP0 边沿生成、并具有由 RISEDELAY / FALLDELAY 定义的额外延迟。
当 RISEDELAY 设置为一个值、并且该值实际上超过当前 PWM 周期内的剩余时间、会发生什么情况、这样延迟边沿将对应于 上一个周期中的时序点 (例如,相当于上一个周期的向下计数位置)? 这是否是一个被接受的用例?
 
具体来说:
  • 是延迟的输出边沿
    • 抑制(屏蔽)、直到该正时点、或
    • 只是延迟并允许进入下一个周期?
  • 如果延迟边沿与下一个周期中的新比较事件重叠、
    • 硬件是否会丢弃之前的延迟事件、
    • 或者、是否有任何形式的事件排队或优先级处理?
从 TRM 中可以看出、死区似乎被实现为相对于比较事件的延迟、但延迟超过 PWM 周期(或跨越周期边界)时的行为尚未明确定义。
 
我附上了一个概念波形图来说明我正在考虑的场景、其中橙色箭头显示 RISEDELAY 的长度足够长、可以延伸到上一个周期。
image.png
您能否澄清本案例中的预期/定义行为?
 
此致、  
Michael
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    请避免以这种方式使用、模式 1 的延迟超过计时器的零事件将影响输出。

    尝试在模式 0 模式下使用、或者您的软件需要在写入寄存器之前检查 CC +死区值。