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.
I imported the example of dual core from \ti\c2000\C2000Ware_4_01_00_00\driverlib\f2837xd\examples\dual\led. I have tested the RAM code and worked well. But I failed the FLASH code. My steps as below and please check what is wrong
1. I set the build configurations from CPU1_RAM to CPU1_FLASH at cpu1 project.
2. the same configutaions change from CPU2_RAM to CPU2_FLASH at cpu2 project.
3. build the both project
4. debug the project 1 and program the flash
the console output:
C28xx_CPU1: GEL Output:
Memory Map Initialization Complete
C28xx_CPU1: If erase/program (E/P) operation is being done on one core, the other core should not execute from shared-RAM (SR) as they are used for the E/P code. Also, CPU1 will be halted to determine SR ownership for the CPU which will run the Flash Plugin code, after which CPU1 will be set to run its application. User code execution from SR could commence after both flash banks are programmed.
C28xx_CPU2: GEL Output:
Memory Map Initialization Complete
C28xx_CPU2: If erase/program (E/P) operation is being done on one core, the other core should not execute from shared-RAM (SR) as they are used for the E/P code. Also, CPU1 will be halted to determine SR ownership for the CPU which will run the Flash Plugin code, after which CPU1 will be set to run its application. User code execution from SR could commence after both flash banks are programmed.
at this moment the debug window as below:
I started the cpu1 debug and it worked that led1 toggled.
I started the cpu2 debug but it failed at device.c
But this worked well at RAM code.
Do I need to revise anything to let it work?
Hi,
Can you clarify what do you mean by failed at device.c ? Does it not return from the Sysctl_setClock function?
Best Regards
Siddharth
Hi,
Will try to run the same example at my end and update you.
Best Regards
Siddharth
Hi,
I am able to run the program , loaded the Flash configuration binaries to both the cores and run both the cores.
Could see the leds blinking one after another.
Can you single step and see what is causing the issue on your end?
Best Regards
Siddharth
I found something different as I thought.
I debug from project blinky_cpu1. The debug window as below
Obviously cpu2 was not loaded correctly, I manually loaded from Run->Load Program and Load Symblos.
The cpu2 would be coorect and the led1 and led2 worked individually.
If I powered off and powered on the launchpad, the device showed led1 worked and loed2 wasnot working. It looked the cpu2 program was not loaded. How do I write the both cpu1 and cpu2 program in the flash when the debug launched?
Hi,
please refer this thread
After the CPU2 boots, it will enter idle mode and waits for CPU1 to instruct what it has to do. The following code is needed so that it can boot from Flash.
// Send boot command to allow the CPU2 application to begin execution
//
IPCBootCPU2(C1C2_BROM_BOOTMODE_BOOT_FROM_FLASH);
Best Regards
Siddharth
Siddharth,
Thanks, it wroks, I just added _STANDALONE in the predefined symbol.
Appreciate your support.