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.

28027 linker problem



Ive used eclipse for many years now with arm and altera NIOS II,   

   I had no problem starting and running hello world, many examples and my own ported code using msp430 variant for a target 5438 pcb,   however the 28027_Ram_lnk.cmd  file for the piccolo device "aint right" the linker complains about mismatched memory locations, inproper stacks and such, I have considered experimenting with the memory locations, however I thought Id ask if there is a better linker file available,  Im testing  CC4 with a recently acquired piccolo  Control stick. and cant even run hello world... it  builds fine until the linker is invoked. what am i missing??

  • I don't know if there is an issue with the .cmd file included with CCS4, but I suggest starting out with some of the examples in the 2802x C/C++ Header Files and Peripheral Examples (SPRC832).

    If you still have issues, then please post what the linker errors are.

    -Lori

  • A program involving CIO such as "hello world" pulls in a lot of code from the runtime library thereby increasing the code section (.text) significantly. In addition, such programs require a good amount of heap space. Since the RAM available on F28027 is quite small, the .text section for a program involving CIO is unable to fit into it. Those are the errors you are seeing. The errors should point to the size of the .text (or other) section it is trying to allocate and the space available in the memory region it is trying to allocate to.

    TI provides examples for F28027 that are aleady ported to CCS v4, you can download them from http://focus.ti.com/docs/toolsw/folders/print/sprc832.html
    These examples use the 28027_RAM_lnk.cmd linker command file and will build and run correctly.

    If you still wish to test a hello world program, you can use the F28027.cmd linker command file (from \DSP2802x_common\cmd folder in the above examples) and allocate the .text section to one of the Flash memory regions which are larger. I tested an example and it works.

  • I found these last night, thanks the problem was the invoking of the run time lib, I use fprintf so infrequently I had forgotten what a mem suck it can be.. also the othe linker file is more complete as it includes the peripheral space as well.