使用皮质M3,arduino到期 有没有人知道它是否有可能在这么多脉冲之后得到一个pwm通道来禁用它自己。
我想尝试的是这样的
中断1点火(timer0), 它设置了pwm的延迟和多少个周期
pwm启动并且每个脉冲递增计数器,一旦计数器达到其极限,pwm将自行禁用
我不感兴趣的是在进行计数/禁用的pwm设置之外的任何其他循环
答案 0 :(得分:0)
只需向执行PWM的定时器添加一个中断(来自"更新"来自"比较" - 结果会略有不同,所以你必须选择你喜欢的那个并在那里增加计数器。一旦计数器达到目标值,只需从中断禁用计时器即可。
答案 1 :(得分:0)
如果您的控制器具有 DMA 和 DMA 迭代计数器,则有更好的方法来处理此问题。
配置 DMA 通道以在每个脉冲上传输一个空字节。配置 DMA 以在迭代计数器达到阈值时引发中断。您可以在此 ISR 处理中停止 PWM 计数器。由于我们使用 DMA 进行脉冲计数,因此 CPU 上的负载很小。