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.

[参考译文] TMS320F280049C:我想通过 RAM 地址读取全局变量

Guru**** 2568565 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1286077/tms320f280049c-i-want-to-read-global-variable-via-ram-address

器件型号:TMS320F280049C

大家好、我开发了一个用于 CHAGE/EDIT、读取变量值和读取的 GUI。 我将通过 UART 获取变量地址。 然后使用 以下方法进行推理、

易失性 uint16_t 数据;

uint32_t nAddr = 0x0000B108; //该地址中的实际值 12345;

数据=*(uint16_t *) nAddr;

我得到的是准确的值。一段时间后、我得到的是垃圾值。  但 在完成程序期间尚未修改该地址/变量。 该变量是如何修改的?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Prabu、您好!

    Unknown 说:
    我得到的是准确的值。过了一段时间后我得到的是垃圾值。  但 在完成程序期间尚未修改该地址/变量。 如何修改该变量?

    为了确认您的情况、您看到了正确的值、但经过一段时间后、您获得了垃圾值、即使实际数据未被程序修改。 当您通过 UART 接收此类数据时、是否在 CCS 调试器中进行了验证?它与表达式窗口的比较情况如何? 您是否还能向我展示一下从 UART 读取值的各种方法中看到的结果与预期的结果?

    此致、

    阿米尔·奥马尔

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    感谢你的评分 我在代码中发现了错误。 内存溢出发生