How do I run and debug this project on core 1 and 2 on my SC589-EZLITE board?

Hi,

I have an ADZS-SC589-EZLITE board, and I have downloaded the Blinking_LED projects for core 1 and core 2: https://github.com/analogdevicesinc/runtime-sharc-loader/tree/master/SharcLoader_Examples/ADSP-SC589/Blinking_LED However, after having imported it into CrossCore Embedded Studio on Windows, built it and started it, nothing happens with the LED on the board, when I expect it to start to blink.

The projects are imported, and I did a small change in the core 1 project to force one of the LEDs to be selected:

My debug configuration looks like this:

Then when I try to run it by clicking on the Debug button, I get this dialog where I select the Yes option:

Then, I'm taken to the Debug view, where it looks like this:

If I press suspend, it seems like it's stuck in some sort of loop, judging from the Disassembly view:

And if I stop it, set a couple of breakpoints, start it again by pressing the debug button, they don't seems to work:

In both cases, nothing happens to the LED on the board. So it seems like the program doesn't run correctly?

What should I do for the program to start correctly? And what should I do to be able to set breakpoints and step through the code?

Best regards

  • 0
    •  Analog Employees 
    on Sep 21, 2020 10:20 AM 5 months ago

    Moved to  ADSP-SC5xx/ADSP-215xx community

  • 0
    •  Analog Employees 
    on Sep 25, 2020 1:13 PM 5 months ago

    Hi,

    We understand that you have not loaded core 0 project in Debug configurations. By default, SHARC+ cores are in IDLE state until enabled by ARM core.

    If you want to debug SHARC+ cores with the emulator and not run an ARM application, you have to enable the SHARC+ cores  each time. This can be achieved as follows:

    1. Create a 1 or 2 SHARC+ core project and load it. Note that a pre-load program will be loaded to core 0.
    2. Click OK at the prompt ‘You haven’t selected a program to load into core 0’
    Then:
    1. Halt Core 1.
    2. Set the RCU0_MSG_SET register in the RCU0 Register Browser to 0x00180000 to release the SHARC+ cores

    Also, please confirm that you are not using arguments to main(), argc and argv. If so, comment the below line in "LED_SC589_EZKIT_Core1.c" source file.

    recv_arg(&argc, &argv);

    After enabling the SHARC cores by RCU0_MSG_SET register and commenting the "recv_arg" function, LED10 is toggling properly.
     
    Regards,
    Anand Selvaraj.