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.

CCS/TMS320F28379D: F28379D SysBios + ControllSuite Libraries Example

Part Number: TMS320F28379D
Other Parts Discussed in Thread: CONTROLSUITE, SYSBIOS,

Tool/software: Code Composer Studio

Hello Everyone,

I am trying to make a simple project that combines a typical sysbios task example and the controlSuite blinky example for the F28379D. Thought it would be easy enough to make a base project that has multitasking as well as all the hardware libraries to start developing with.

I have run into allot of problems trying to get this to work and am wondering if anyone has been able to do this.

************************

Process I have tried:

************************

1) Started with a Sys/Bios typical project for the F28379D.

  • on the RTSC configuration page set target to be:       ti.targets.C28_float
  • set platform to be:       ti.platforms.tms320x28:TMS320F28379D
  • Project builds fine and runs on the hardware, good so far!

2) Recreated the project properties found in the example [ControlSuite/Devices/Delfino F2837xd/Code Examples/blinky]

  • for the compiler added the F2837xD_headers/include and the F2837xD_common/include paths
  • predefined symbol CPU1 added so conditional code compiles correctly
  • linker added F2837xD_headers/cmd and F2837xD_common/cmd path
  • linker added file rts2800_fpu32.lib

4) Added the reference files to the project

  • Binky has 9 referenced files all starting with F2837xD_
  • Added these as references to the bios project

3) Try adding the command files, think this is where my problems are

  • blinky uses (F2837xD_RAM_Ink_cpu1.cmd) found this in CCS7 directories and copied it to the project
  • blinky also uses (f2837xD_Headers_nonBIOS_cpu1.cmd) Found this in the controllSuite directories, but also found a bios version of the cmd file.
  • Coppied (f2837xD_Headers_BIOS_cpu1.cmd) to the project directory.

************************

When I compile the project, I get that the program will not fit into memory and have alignment/blocking fails for multiple sections. I have tried a few different cmd files, but they all try and put things into memory that is full. Under the Memory Allocation Tab I have about 15,000 bytes in the Failed Allocation section.

Looking for any suggestions on how to fix this problem, or an easier way to make a project that includes sysbios as well as the hardware libraries.

Scott

  • Hi Scott,

    When you imported the SYSBIOS "typical" project, there should have been a generic flash .cmd file to the project (probably named TMS320F28379D.cmd). If you try using that one instead of F2837xD_RAM_lnk_cpu1.cmd (or any of the other common/cmd linker files), does the error go away?

    If you want to put the program in RAM instead of flash, you'll have to make some modifications to the RAM .cmd file to try to get it to fit. The ones provided in controlSUITE don't appear to allocate enough space to fit a default SYSBIOS configuration.

    Whitney

  • Hello Whitney,

    Sure enough that was it! I got caught up importing everything over, needed to keep the origional cmd file and only include the (f2837xD_Headers_BIOS_cpu1.cmd) since it has all the hardware registers the library uses. The project used register names from the original file, and the new file had completely different names and it could not set the boot location.

    I also discovered that I had to remove one of the reference files, it was also changing how the boot was being done.

    Thanks for your help! The project is blinking away :-)
    Scott
  • Hi, Scott,
    I also encounter the same problem. I found a cmd file, and added it in the project. Then the typical project works, but I am studying the cmd file now. I'd like to attach the cmd file to you, but I don't konw how....And also I have some problem which maybe we can discuss. I am working with FREEDM in NSCU now.
    Jun
  • Hello Jun,

    What is the name of the command file you ended up using?

    Scott
  • Hi  Scott,

     The file I am using is F28377D.cmd which you can find at ti\bios_6_46_05_55\packages\ti\platforms\tms320x28\include.

    Actually I think the key is the instruction:  D01SARAM   : origin = 0x00B000, length = 0x001000


    It seems BIOS run at D01SARAM . But I don't know where i can find the define or configuration of 'D01SARAM' for BIOS.