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.

F28M35 如何让两个核都在FLASH跑起来??



硬件:F28M35xx ISO controlCARD

软件:CCS5.2

例程:F28M35 Dual Examples / Blinky

我原本以为只要分别导入 F28M35 Dual Examples / Blinky 中 M3 侧和 C28 侧的程序代码,就可以实现又核独立运行了,结果并没有如此。

现象:M3 侧程序正常,Debug 和 FLASH 运行都没有问题。C28 只有在 Debug 才能运行。

C28 要从 FLASH 需要在 M3 中用 IPC 函数进行引导,没错,后来发现问题就出在了这里。

下图是 M3 中的部分代码截图,单步发现,程序并没有调用任何 IPC 函数,发现 “STANDALONE“ 并没有想象中是认定的,所以这部分预编译的内容都没有编译进去。所以这段代码并没有运行,以致 C28 不能进行 C-BOOTLOADER,所以跑不了。

这些是我自己琢磨的,找了找了 ” STANDALONE“,没找到,不知道在哪,难道要自己定义??

实验发现,去掉这个预编译,即成下面那样,又核可以运行。

这个 FLASH 肯定是定义过的,那他是在哪里定义的呢?

请各位专家指点一下,谢谢了~~

  • 断点楼主可以自己设置,把跳线设置成从FLASH启动。按照下面的顺序使得两个内核可以都跑起来:

    C28x CPU reset-->M3CPU reset-->M3 CPU run-->C28x CPU run

    至于楼主谈到的 _STANDALONE和_FLASH定义,一般在下面定义,如果没有楼主可以自己加一下:


    Properties-->Build-->Complier-->Advanced option-->Predefined Symbols