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.
大家好!
例如 ,ePWM_ex3_synchronization.c 同步部件对 epwm3的 gues 有误签名。
此外,还会使用相同的相位移值更新时间基计数器值,以初始化相位移值(代码段如下)。 其目的是什么?
当我动态更新相位移位值时,我应该每次都更新时间基准计数器值吗?
请提前感谢。
谢谢,
ePWM_ex3_synchronization.c 行136-142
// // Initialize PWM2 with phase shift of 300 TBCLKs // initEPWM(myEPWM2_BASE); EPWM_selectPeriodLoadEvent(myEPWM2_BASE, EPWM_SHADOW_LOAD_MODE_SYNC); EPWM_setPhaseShift(myEPWM2_BASE, 300); EPWM_setTimeBaseCounter(myEPWM2_BASE, 300);
您好,
由于美国假期,请预计明天二月二十二日前作出回应。 给您带来不便的真诚道歉。
您好,Erhan,
[引用 userid="508064" url="~/support/icros/c2000微控制器-组/CC2000 /f/c2000微控制器-论坛/1078925/tms320f28388d-examplplw-ePWM_ex3_synchronize-c"]当我动态更新相移值时,我应该每次更新时间基准计数器值吗?不,不应该有这种需要。 我已经提交了一份内部注释,以在从我们的示例中更新阶段时删除对时间基准计数器值的更新。
[引用 userid="508064" url="~ë/support/intrans/c2000微控制器-组/CC2000 /f/c2000微控制器-论坛/1078925/tms320f28388d-examplplw-ePWM_ex3_synchronization-c"]示例 中,ePWM_ex3_synchronization.c 同步部件对 i 有误签名[引用/引用]。感谢您指出埃尔汉! 以下代码是基于同步方案 F8388D 的本示例中 ePWM 初始化中的代码:
SysCtl_disablePeripheral(SYSCTL_PERIPH_CLK_TBCLKSYNC); // // Initialize PWM1 without phase shift as master // initEPWM(myEPWM1_BASE); // // Initialize PWM2 with phase shift of 300 TBCLKs // initEPWM(myEPWM2_BASE); EPWM_selectPeriodLoadEvent(myEPWM2_BASE, EPWM_SHADOW_LOAD_MODE_SYNC); EPWM_setPhaseShift(myEPWM2_BASE, 300); // // Initialize PWM3 with phase shift of 600 TBCLKs // initEPWM(myEPWM3_BASE); EPWM_selectPeriodLoadEvent(myEPWM3_BASE, EPWM_SHADOW_LOAD_MODE_SYNC); EPWM_setPhaseShift(myEPWM3_BASE, 600); // // Initialize PWM4 with phase shift of 900 TBCLKs // initEPWM(myEPWM4_BASE); EPWM_selectPeriodLoadEvent(myEPWM4_BASE, EPWM_SHADOW_LOAD_MODE_SYNC); EPWM_setPhaseShift(myEPWM4_BASE, 900); // // ePWM1 SYNCO is generated on CTR=0 // EPWM_enableSyncOutPulseSource(EPWM1_BASE, EPWM_SYNC_OUT_PULSE_ON_CNTR_ZERO); // // ePWM2-4 use the ePWM 1 SYNCO as its SYNCIN. // EPWM_setSyncInPulseSource(myEPWM2_BASE, EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_EPWM1); EPWM_setSyncInPulseSource(myEPWM3_BASE, EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_EPWM1); EPWM_setSyncInPulseSource(myEPWM4_BASE, EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_EPWM1); // // Enable all phase shifts. // EPWM_enablePhaseShiftLoad(myEPWM2_BASE); EPWM_enablePhaseShiftLoad(myEPWM3_BASE); EPWM_enablePhaseShiftLoad(myEPWM4_BASE); // // Enable sync and clock to PWM // SysCtl_enablePeripheral(SYSCTL_PERIPH_CLK_TBCLKSYNC);
此致,
Marlyn
你好,Marlyn!
感谢您的回答和代码。 我刚刚用 C2000ware 安装中的示例替换了它。
您知道是否有即将发布的 C200Ware 版本?
谢谢,
您好,Erhan,
没问题! 是的, 我们在3月份发布了一个新版本,所以请大家关注一下。 在这一新版本中,sysconfig 工具中将提供 ePWM 支持。 基本上 ,您可以通过图形 GUI 配置模块(或其他模块),它将自动为您生成代码。 sysconfig 具有许多功能,下面是更多信息: C2000 sysconfig
此致,
Marlyn
你好,Marlyn!
感谢您提供信息。
NIMA Eskandari 也告诉我这一点,但不幸的是,我开始使用 ePWM。 s 但感谢 sysconfig 工具。 我主要是独立使用它来分配引脚。 这节省了我的时间。 这是一个很好的工具
但是,您可能知道 ,如果不变通(编辑 json 文件),就无法运行独立 sysconfig 的多个实例。 新版本是否也修复了该问题?
谢谢,
您好,Erhan,
[引用 userid="508064" url="~ë/support/intrans/c2000微控制器-组/CC2000 /f/c2000微控制器-论坛/1078925/tms320f28388d-examplw-ePWM_ex3_synchronization-c/3997039#3997039]I 使用它主要是独立的引脚分配。 这节省了我的时间。 这是一个很好的工具很高兴知道您使用了 sysconfig,它对您很有用,并帮助您节省时间!
[引用 userid="508064" url="~ë/support/MICC-MIC-group/c2f/C2000-微控制器-forume/1078925/tms320f28388d-examplplw-ePWM_ex3_synchronize-c-c/3997039#3997039">,但您可能知道 如果不编辑多个独立的 json 文件,就无法运行。 新版本是否也修复了该问题?NIMA Eskandari,您是否知道 这是否在下一个 sysconfig 版本中得到了解决?
此致,
Marlyn
我认为 CCS 团队没有能力解决这个问题。 JSON 解决方案是我唯一知道的解决方案。 此外,还可以使用多个实例启动联机版本(dev.ti.com)。
为什么不呢?
我不是专家,但乍一看,我可以说我可以编写一个小的 python 脚本,该脚本将在 package.json 文件的 name 部分增加一个计数器。
然后将此脚本与 sysconfig 快捷方式连接。 每次运行时,json 文件都会发生变化,并允许运行多个实例。
我听说过在线工具,但我们遇到了互联网问题。 :s
谢谢,
package.json
{ "name": "Erhan YILMAZ SysConfig Counter:xxxxxx", "main": "dist/index.html", "window": { "width": 1281, "height": 800, "icon": "dist/sysconfig.png" } }
Darian Sale 是否可以对上面有关在桌面上启动 sysconfig GUI 工具的多个实例的项目发表评论?
它更多的是“尚未”与“无法”。 请注意,node-webkit 在%LOCALAPPDATA%/<name in package.json>下创建临时文件,因此,如果您在平均时间内编写此脚本,请确保清除该文件。