工具/软件:
尊敬的专家:
我向我的客户询问这个问题。
我的客户希望测量输入到 DSP 的信号的高电平时间、现在 ECAP 和 EPWM 模块还不够。 更重要的是、他们不希望产生 额外的中断来实现此功能。 他们只需要在当前 PWM 中断 (30kHz) 中检查该值
因此、我建议他们使用此解决方案:
1.使用 XINT1 在下降沿和上升沿生成 XINT1 事件。
2.启用 Timer2。
3.使用 XINT1 作为触发源触发 DMA、将 CPUTIMER TIM 寄存器传输到缓冲区。 DMA 将突发设置为 2 以实现:当第一个 XINT 生成(触发输入上升沿)时、DMA 将 TIM 值置于缓冲器[0]、当第二个 XINT 生成(触发输入下降沿)时、DMA 将 TIM 值置于缓冲器[1]。 在 PWM 中断中、它们使用 Buffer[1]- Buffer[0]来获得 输入信号的高电平时间。
但现在我有一些问题、
1.这个解决方案是否合理? 是否可以生成 ISR 而生成 XINT 事件来触发 DMA?
2.我认为可以。 但我无法触发 DMA、您能帮助检查我的配置中是否有任何错误吗?
e2e.ti.com/.../3252.gpio_5F00_ex2_5F00_toggle.zip
3.由于计时器将达到其最大值并从零开始重新启动,因此我不能保证 Buffer[1]始终大于 Buffer[0]。 那么、是否可以让 DMA 在第一个 XINT1(上升沿)中对 TIM(复位计时器)置零、并让 DMA 在第二个 XINT1(下降沿)中对 TIM 进行缓冲?
BRS
Shuqing




