主题中讨论的其他器件:BOOSTXL-TUSS4470、 SysConfig、 C2000WARE
我正在尝试使用 LANUCHXL-F2800137生成脉冲突发、以驱动 BOOSTXL-TUSS4470。 我正在寻求您的帮助、以提供一个代码示例、即每秒发送'11001100'十次(10Hz)。 非常感谢。
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.
我正在尝试使用 LANUCHXL-F2800137生成脉冲突发、以驱动 BOOSTXL-TUSS4470。 我正在寻求您的帮助、以提供一个代码示例、即每秒发送'11001100'十次(10Hz)。 非常感谢。
您好!
您可以使用 ePWM 模块来生成如上所示的脉冲模式。
如果您尚未参考 c2000ware 中的 SysConfig ePWM 示例、可以先参考。
您基本上可以通过 在条件语句中针对两个计数设置适当的 CMP 值和 tbprd (PWM 周期)(针对1usec)、从而将 PWM 配置为50%占空比。
完成两个计数时、更改 Compare 值、以便为接下来的两个计数获得0%的占空比。
基本而言、请继续根据需要重复此操作。
谢谢!
Prarthan.
您好!
您可以在此处的此页面上找到更多详细信息 https://software-dl.ti.com/C2000/docs/software_guide/c2000_sysconfig.html 下载 C2000Ware、您可以通过 Code Composer Studio 使用它。
技术参考手册 ePWM 一章的说明 软件部分 它给出了示例的基本概述、但没有特定的软件参考手册。
如果您对运行示例有任何疑问、请告知我们。
谢谢!
Prarthan.
我发现该中断只被调用一次。 以下函数的问题是什么?
__interrupt void INT_myEPWM1_ISR (void)
{
//修改 ePWM1A 的 CMP 值
EPWM_setCounterCompareValue (myEPWM1_base、EPWM_COUNTER_COMPARE_A、120 - cmpValue[idx]* 60);
IDX ++;
if (idx == pulse_length){
IDx = 0;//无中断确认,然后等待计时器触发。
}其他{
//确认该中断以接收来自 myEPWM1_INTERRUPT 组的下一个中断。
INTERRUPT_clearACKGROUP (INT_myEPWM1_INTERRUPT_ACK_GROUP);
}
}