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.
我想 使用比较器之一触发 PWM 更新(更改占空比)。
在没有 CPU 干预的情况下、最好的方法是什么?
Chris、您好!
比较器切换的目标是将 PWM 占空比更改为特定的非零或非100%值(例如75%)吗? 或者设置 PWM 输出完全为高电平/低电平?
对于后者、当比较器处于活动状态时、您可以使用比较器故障机制将 PWM 输出设置为高电平或低电平。 故障特性提供了大量选项来更改故障期间的 PWM 行为、以及滤除任何瞬态。 但是、故障处理程序仅集成到高级计时器实例(TIMAx)中。
如果您要将 PWM 更新为特定值(例如、当 COMP 变为高电平设置占空比为60%)、您可以使用 DMA 和事件框架来执行此操作。 COMP 是事件发布者、DMA 是事件订阅者。 在发生发布事件时、可以配置 DMA、以更新计时器实例的相关捕获比较寄存器。
此致、
布兰登·费舍尔
如果使用计时器故障处理程序、我们可以在不到200ns 内将 PWM 置为高电平/低电平吗?
谢谢
Chris、您好!
从比较器 输出边沿到 PWM 响应时间为200ns、还是包括比较器延迟时间为200ns? 在任何一种情况下、答案都是肯定的。 对于后者、您当然需要在高速模式下使用比较器(传播延迟为40ns、过驱为100mV)。 您添加的任何滤波当然会延迟此响应。
对于前者、如果您未使用故障输入滤波器、低于100ns 就是我预期的故障信号(在本例中比较器输出发生变化)到故障置位(PWM 消隐)。
此致、
布兰登·费舍尔