TI中文支持网
TI专业的中文技术问题搜集分享网站

F28379D双核程序脱机运行

开发环境:CCS_v9_1

开发板:LAUNCHXL-F28379D

参考资料:control-suite

想实现效果:F28379D两个CPU皆可脱机运行程序:CPU1启动CPU2,CPU2控制PWM模块输出波形

问题描述:

我参考control-suite里面的双核例程,搭建了两个工程:分别为CPU1对应的工程,和CPU2对应的工程。其中CPU1对应的工程烧录模式有3种:RAM、FLASH、STANDALONE_FLASH;CPU2对应的工程烧录模式有2种:RAM、FLASH。

在对CPU1和CPU2使用RAM模式烧录时,CPU2可控制PWM模块输出波形。

现想实现脱机运行,上电后直接让CPU2控制PWM输出波形,CPU1工程配置为STANDALONE_FLASH,CPU2工程配置为FLASH模式。烧录成功后,脱机执行。重新上电后,由CPU2控制的LED灯可以完成闪烁(CPU2程序控制),说明CPU1启动CPU2成功。但问题来了,CPU2控制的PWM模块没有输出PWM波形,但在RAM模式下是可以控制输出的。

为什么CPU1启动CPU2成功,但CPU2没有控制PWM模块输出波形呢?在CPU1工程中已经将PWM模块的控制权交给了CPU2。

Susan Yang:

您使用的是下面的例程?

C:\ti\controlSUITE\device_support\F2837xD\v210\F2837xD_examples_Dual\adc_epwm

我会在测试后给您回复

user4415031:

回复 Susan Yang:

对的,就是这个例程,这个例程里面发现一个情况,就是CPU1工程里面虽然有STANDALONE_FLASH模式,但没有找到对应的用CPU1利用IPC启动CPU2的代码,但在单核例程中是有的。

这是我的代码工程:

3125.F28379D_LANCHPAD_PWM_CPU1_CCSV9_1-20200630.zip

F28379D_LANCHPAD_PWM_CPU2_CCSV9_1-20200630.zip

Susan Yang:

回复 user4415031:

是的,您需要添加下面的代码
#ifdef _STANDALONE
#ifdef _FLASH
//
// Send boot command to allow the CPU2 application to begin execution
//
IPCBootCPU2(C1C2_BROM_BOOTMODE_BOOT_FROM_FLASH);
#else
//
// Send boot command to allow the CPU2 application to begin execution
//
IPCBootCPU2(C1C2_BROM_BOOTMODE_BOOT_FROM_RAM);
#endif
#endif

另外需要注意

The examples provided are built for controlCARD compatibility. For LaunchPad use, some minor modifications may be required.

If using a Launchpad, add a pre-defined symbol within the project properties called "_LAUNCHXL_F28379D". This is required to setup the proper device clocking.

user4415031:

回复 Susan Yang:

您好,感谢您的指导,上述代码已经添加到工程里面了,如下图一。代码对Launchpad时钟也做了修改,倍频后时钟频率为200MHz,如下图二。这些地方我都注意到了,可还是无法让CPU2控制PWM模块输出波形,您可以用我上一个帖子里包含的两套工程代码实验一下吗,那套工程代码就是基于您所说的例程改编的。现在实验好多次了,就是无法达到让CPU2脱机运行,控制PWM模块输出波形的效果。

 

user4415031:

回复 Susan Yang:

已经可以啦,我把这行命令放到前面了,就可以了,之前那个是放到一个1s的延时后了,导致没有来的及交给CPU2来控制

EALLOW;DevCfgRegs.CPUSEL5.bit.SCI_B = 1;// Transfer ownership of SCI_B to CPU02EDIS;

Susan Yang:

回复 user4415031:

谢谢您的反馈!

赞(0)
未经允许不得转载:TI中文支持网 » F28379D双核程序脱机运行
分享到: 更多 (0)