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.

Hercules TMS570 Launchpad

Other Parts Discussed in Thread: RM46L852

Momentary I'm doing SW-tests with CodeComposerStudio +  HerculesLauchpad-TMS570 but I have difficulties with debugging (i.e. Breakpoints will not be reached, system reset....) . An according ticket is also opened (ref. CS1256678) and I was forwarded to e2e-forum.

I suppose, that vector addresses are not fitting to this launchboard - but I am not sure.

Also .cio is missing for printf-output.

....see also appended  CCS-screenshot

  • Hi Wolfgang,

    If an ESM group3 error is detected, the code will fall into a forever loop in _c_int00(). If the breakpoint is at a statement after this while(1) loop, and there is a ESM group3  error, the breakpoint will not be reached.

    If you select the right device part number (RM46L852), the correct interrupt exception code should be generated:


    .sect ".intvecs"
    .arm

    ;-------------------------------------------------------------------------------
    ; import reference for interrupt routines

    .ref _c_int00
    .ref _dabort
    .ref phantomInterrupt
    .def resetEntry

    ;-------------------------------------------------------------------------------
    ; interrupt vectors

    resetEntry
    b _c_int00
    undefEntry
    b undefEntry
    svcEntry
    b svcEntry
    prefetchEntry
    b prefetchEntry
    b _dabort
    b phantomInterrupt
    ldr pc,[pc,#-0x1b0]
    ldr pc,[pc,#-0x1b0]

  • Is there bootloader at 0x00000000? It looks like that your code is located starting at 0x2000.

    Can you share the linker cmd file?

  • Hello.... and thanks for Your reply....appended are linker-cmd-file (see below). We also need a proper run-time support lib......

    thanks in advance

    Wolfgang Seils

    /*----------------------------------------------------------------------------*/
    /* TMS570LS04xxFlashLnk.cmd                                                 */
    /*                                                                            */
    /* (c) Texas Instruments 2011, All rights reserved.                           */
    /*                                                                            */
    
    /* USER CODE BEGIN (0) */
    /* USER CODE END */
    
    
    /*----------------------------------------------------------------------------*/
    /* Linker Settings                                                            */
    --retain="*(.intvecs)"
    
    /*----------------------------------------------------------------------------*/
    /* Memory Map                                                                 */
    MEMORY{
        VECTORS (X)  : origin=0x00000000 length=0x00000020
        FLASH0  (RX) : origin=0x00000020 length=0x0005FFE0
        STACKS  (RW) : origin=0x08000000 length=0x00000400
        RAM     (RW) : origin=0x08000400 length=0x00007C00
    }
    
    /*----------------------------------------------------------------------------*/
    /* Section Configuration                                                      */
    SECTIONS{
        .intvecs : {} > VECTORS
        .text    : {} > FLASH0
        .const   : {} > FLASH0
        .cinit   : {} > FLASH0
        .pinit   : {} > FLASH0
        .bss     : {} > RAM
        .data    : {} > RAM
    }
    /*----------------------------------------------------------------------------*/

  • ...here my current project setting(att).....changing TMS570LS043x  to RM46L852 did not work at all.....

  • The linker cmd script is for TMS570LS043x. The RM46L852 should use different linker cmd script:


    MEMORY
    {
       VECTORS (X) : origin=0x00000000 length=0x00000020
       FLASH0 (RX) : origin=0x00000020 length=0x0013FFE0
       STACKS (RW) : origin=0x08000000 length=0x00001500
       RAM (RW) : origin=0x08001500 length=0x0002EB00

    }

    Please be aware of that the TMS570LSx is a big endian device, but RM46L852 is a little endian device.