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/TMS320F280049C:F280049C LaunchPadXL 板上的 PWMDAC

Guru**** 2589280 points
Other Parts Discussed in Thread: DRV8320, LAUNCHXL-F280049C

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/975033/ccs-tms320f280049c-pwmdac-on-f280049c-launchpadxl-board

器件型号:TMS320F280049C
主题中讨论的其他器件:DRV8320LAUNCHXL-F280049C

工具/软件:Code Composer Studio

您好、Yanming

回答您的问题、即具有 DRV8320的 F280049C LaunchPad 板不支持 PWMDAC
(e2e.ti.com/.../3487000,我有一些相关问题:
根据代码、PWMDAC 使用 ePWM7A/B 和 ePWM8A/B、这与 GPIO12/28 (7A) GPIO13/29 (7B) GPIO 14/24 (8A)和 GPIO 15/32 (8B)相关、
这些 PGIO 用于 LaunchPad 板上的其他功能、您回答了吗?

如果我使用 ePWM1和4 (该站点最初将其用作站点2中 DRV8320的 PWM 信号)、情况会怎样、因为我只使用站点1。 ?
// obj->pwmHandle[0]= EPWM1_base;//!< PWM 句柄、GPIO0/GPIO1
// obj->pwmHandle[1]= EPWM4_base;//!< PWM 句柄、GPIO6/GPIO7
obj->pwmDACHandle[0]= EPWM1_base;//EPWM7_BASE;
obj->pwmDACHandle[1]= EPWM1_base;// EPWM7_BASE;
obj->pwmDACHandle[2]= EPWM4_base;// EPWM8_BASE;
obj->pwmDACHandle[3]= EPWM4_base;// EPWM8_BASE;

我还必须在 hal.c 运行下面的代码、因为默认情况下不会编译 HAL_setupPWMDAC、instaspin 实验指南也没有提到这一点
#ifdef PWMDAC_ENABLE
//设置 PWM DAC
HAL_setupPWMDAC (handle、USER_SYSTEM_FREQ_MHz);
#endif

谢谢

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

    大家好、Evanus、

    我相信 Yanming 的意思是 LAUNXHL-F280049C 板本身缺少用于 PWM DAC 功能的硬件组件和连接。 例如、F2837x LaunchPad 具有以下用于此目的的 RC 电路:

    最棒的

    Kevin

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

    尊敬的 Kevin

    感谢您的响应、您答对了、LAUCHXL 电路板上没有 RC 滤波器、因此我将 PWMDAC 重新路由至 EPWM1&4 (我不使用站点2、因此我将该端口用于 PWMDAC)、并使用外部 RC 滤波器。  

    我认为还需要运行另一个脚本:

    HAL_setupPWMDAC (handle、USER_SYSTEM_FREQ_MHz);在 hal.c 中 默认情况 下、不会编译此行、instaspin 实验指南也不会提及设置 PWMDAC。 如果还必须运行此行、请将其添加到下一个 instaspin 修订手册中  

    最后、我可以使用上述设置运行 PWMDAC (我将频率更改为62.5Hz)、如下图所示、但无法通过数据记录获得类似的结果

    我按照指南操作(但我将显示数据从400更改为4000,以获得该图片):

    datalogObj->iptr[0]=&angleFoc_rad;
    datalogObj->iptr[1]=&pwmData.Vabc_pu.value[0];
    datalogObj->iptr[2]=&pwmData.Vabc_pu.value[1];
    datalogObj->iptr[3]=&pwmData.Vabc_pu.value[2];

    数据记录有什么问题、而我可以使用 pwmdac 获取预期波形、并从数据记录获取意外波形

    谢谢、致以诚挚的问候

    Evan

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

    尊敬的 Kevin

    下面是使用 CCS 图形工具的图片(在我之前的消息中消失),所有4 个 datalogObj->iptr 都具有类似的结果。

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

    大家好、Evanus、

    我不太熟悉 InstaSPIN 软件。 我将看到 Yanming 是否可以对您的问题发表评论。

    最棒的

    Kevin

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

    您可以参阅 motorcontrolSDK 中的 instapin_focc for launchxl-f280049c 的 lab03、其中包含实施数据记录的详细操作步骤。

    并且不要更改为数据记录缓冲器分配的存储器、该缓冲器需要使用 GS RAM 用于数据记录所使用的 DMA。