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.

Dual core code example from Controlsuite for TMS320F28377D

Other Parts Discussed in Thread: CONTROLSUITE, TMS320F28377D

Hi all,

I am using a DUAL core application for TMS320F28377D. The code has been taken from code example of controlsuite.

The code is blinky_dc.

blinky_cpu1:

This is run from CPU1. GPIO31 is configured as output and run from this core only. At while loop it toggles.

Also from this core GPIO34 is configured as GPIO to be used from CPU2.

 

blinky_cpu2:

this is run from CPU2. GPIO34 which is configured from CPU1 are toggled in this code.

 

The problem I am facing:-

both the codes are built as error free. But I am not able to see the status of GPIO34 neither from watch window nor from actual LED condition.

Even it is not happening with single step operation also ( putting breakpoint and the step by step operation).

 

In CPU2 code I increment a dummy variable in infinite loop. The updating of the variable is seen from watch window but the GPIO34 is unseen.

I am also having some doubt on line no 53 for CPU1 and 52 of CPU2. Some 'TODO' is mentioned, which is not cleared.

 

Also is it not possible to check the different variables, say variable 'a' from CPU1 & variable 'b' from CPU2 at watch window simultaneously.

 

Please let me know if you need any other data from my side.

  • Hi Raja,

    Did you go through this workshop:

    Regards,

    Gautam

  • No I have not.
    Please explain if u have any idea on it.
    Regards
    Raja Saha
  • Please help. I am still struggling with this problem.
    Please let me know if someone need any further data from me.
    Regards
    Raja Saha
  • Raja,Could you please check if you have latest controlSUITE updates? Regards,
    Vivek Singh
  • Raja,

    These GPxDAT, GPxTOGGLE,GPxSET registers are EALLOW protected.

    Did you make sure EALLOW is enabled in status registers before writing to these registers?

    Regards,
    Manoj
  • Raja,
    I was able to run the example and toggle both the GPIO. I used "RAM" build configuration. Which build configuration you are using?
    Also the "TODO" item in this code is just another way to configure the GPIO34 (e.g. setting it in output mode) from CPU1 code using IPC but that's not used in it currently. Right now CPU1 assigns the GPIO34 ownership to CPU2 and then CPU2 code does the configuration and toggles it. So that's not an issue.
    Regards,Vivek Singh
  • Dear Vivek,

    Thanks for your reply.

    I have also taken the code example of Dual core blinky from Controlsuite, which I have installed just a month before.

    But the problem is there. Even I tried in different PC also.

    Apart from this also I am facing a lots of problem with this controller mainly while I want to create a new project ( apart from Controlsuite). I am following the F2837xD-FRM-EX-UG. pdf ( firmware user guide) as given in controlsuite.

    The problem is that, in new project there is  two configuration "DEBUG" and "Release".

    I successfully build the project in DEBUG configuration ( by giving FLASH cmd file), but while I go for other configuration (say Release or CPU1_FLASH, which will be actually in my case) I need to give all the path for include and source files again though they are already present with correct path. Even after doing that also one source file is showing  problem (PieVect.c - some undefined symbol, _IPC0_ISR). The reason for me to give different build configuration, as I have to run the code from FLASH, while JTAG is not connected. In DEBUG mode it is not happening. My boot mode is from FLASH ( GPIO72 & GPIO84 both are high).

    Another point is if I want to build a project for DUAL core, how to assure that both the programmes are running simultaneously? In DeBug or in RAM one data or expression from one core is shown, while the other is shown as suspended. What should be my build configuration mode that time?

    Please help.