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.

MSP430FR5994: When creating a new CCS project the linker file, lnk_msp430FR5994.cmd, doesn't include the LEA shared RAM as a defined segment.

Part Number: MSP430FR5994

Question: To add the shared LEA SRAM segment is it safe to either (1) add an added 4k entry; or, (2) extend the existing entry to make it larger (8k)?

Context:

I believe I'm finding that the standard linker support file (lnk_msp430FR5994.cmd) for the MSP430FR5994 fails to include a segment in the MEMORY{} area for the LEA shared RAM at 0x002C00.

Currently I am doing straight-up MSP430 assembly work -- no C or C++ will be anywhere in the project. I'm currently assuming that there is some C/C++ memory model reason why this is the case (the assumption is that I'll be using C or C++ [wrong!] and so they "make it easy.") But I'd like to know if I'm right about that and can either (1) add an added 4k entry for this purpose; or, (2) extend the existing entry to make it larger (8k).

I've only just started using CCS for MSP430 development. It's been a learning experience (prior, I used the Kickstart from IAR.) Aside from its inability to do accurate cycle counts (I'll get over it, but it's annoying), I'm beginning to feel that I have to cross-check every single detail as CCS on my first impressions seems to not be a well-vetted development environment. (By that, I mean well-vetted by expert users. I'm starting to think that it is used mostly by inexperienced users and so it doesn't get the deep vetting into every single corner usage that it should get.)

But I may just be stupid and, if so, I won't mind a swift kick in the pants about it.

  • Hmm. I see a separate MEMORY section later on in the linker input file:

    Fullscreen
    1
    2
    3
    4
    5
    MEMORY
    {
    LEARAM : origin = 0x2C00, length = 0x1000 - LEASTACK_SIZE
    LEASTACK : origin = 0x3C00 - LEASTACK_SIZE, length = LEASTACK_SIZE
    }
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

    I'll need to change that for my uses. But that explains why I didn't see the region defined earlier.

  • Hi Jonathan Kirwan

    Thanks for your sharing!

**Attention** This is a public forum