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.

[参考译文] CCS/TMS320F28069:ePWM 事件问题

Guru**** 2539500 points
Other Parts Discussed in Thread: CONTROLSUITE, C2000WARE

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/598544/ccs-tms320f28069-epwm-event-issue

器件型号:TMS320F28069
Thread 中讨论的其他器件:controlSUITEC2000WARE

工具/软件:Code Composer Studio

我将使用以下配置生成 ePWM3脉冲以触发 ADC 采样

EPwm3Regs.ETSEL.bit.SOCAEN = 1; //在组上启用 SOC
EPwm3Regs.ETSEL.bit.SOCASEL = 4; //在递增计数时从 CMPA 中选择 SOC
EPwm3Regs.ETPS.bit.SOCAPRD = 1; //在发生第一个事件时生成脉冲
EPwm3Regs.CMPA.half-CMPA = 0x0080;//设置比较 A 值
EPwm3Regs.TBPRD = 0xAFC8;//TBCLK=SYSCLK/(HSPCLKDIV*CLKDIV)=45MHz 这将提供1KHz 脉冲
EPwm3Regs.TBCTL.bit.CTRMODE = 0; //向上计数并启动 

但 ADC 未被触发、我还配置 GPIO04以观察 ePWM3A 是否出现脉冲

GpioCtrlRegs.GPAPUD.bit.GPIO4 = 0;//启用 GPIO4上的上拉
GpioCtrlRegs.GPAMUX1.bit.GPIO4=1;// 0=GPIO、1=EPWM3A、2=Resv、3=Resv 

我已经检查了 epwm3时钟是否已启用。

有人能看到问题的原因吗?

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

    我认为您共享的配置看起来不错。 您是否还配置了 ADC 并将 EPWM3A 设置为 SOC 触发器?
    示例是 C2000Ware 和 controlSUITE 的器件支持文件夹中的 ADC_SoC 项目。

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

    你(们)好,Elizabeth

    是的。 我测量了配置为 ePWM3A 输出的 GPIO-4。 它只会递增一次、然后停止。

    我不确定阻止它生成周期性 PWM 输出的问题在哪里?

    谢谢

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    如果您在"Registers"窗口中单步执行或暂停/运行代码并查看 EPwm3Regs.TBCTR 的值、您能看到它多次计数到 TBPRD 吗?

    此致、
    Elizabeth