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.

Expressions Window / Variable Watch fails for flash variables

If you declare a variable in flash memory, like so:

#pragma PERSISTENT;

#pragma LOCATION(0x1800);

volatile MissionTimeType missionTime = 0;

When you try to view the variable by hovering, or in the expression window, you will get the wrong value.

It appears the IDE has the wrong address for the variable, as doing something like &missionTime, in this case, shows the wrong address (0x3000 in my case)

Using the latest and greatest version of CCS.

  • Are you using CCS v5.5? I assume your source file is a C++ file, as it seems the syntax you are using for the pragmas is for C++ files. What device are you working with?

    I tried reproducing this but have been unable to. In my test, the address gets resolved correctly and the value is as expected in the Expressions view. Would you be able to send us a small reproducible test case (you can zip up your project folder and attach it here)?

  • Yea, Cpp.

    I just ran update earlier this week, but I guess it pulled updates for everything else, I'm still showing  Version: 5.4.0.00091 in the about screen.  Do you normally have to upgrade manually?

    Alex

  • It should allow you to update, however we have heard of some issues with updating from 5.4 to 5.5 so I would recommend a complete clean install of CCS 5.5, which you can download from http://processors.wiki.ti.com/index.php/Download_CCS 

    You can keep your existing installation and simply install 5.5 to another directory and use both versions side by side.