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.

[参考译文] TMS320F28386S:RAM 保持- CM

Guru**** 2535150 points


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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1249623/tms320f28386s-ram-retention---cm

器件型号:TMS320F28386S

您好!

是否可在 CM 上保留 RAM?

我使用的是 lwip 栈、而是让看门狗每30分钟左右重置一次器件...
我还有另一个关于该问题的 TT。


无论如何、为了帮助处理看门狗复位、我需要能够在 RAM 中保留一些数据。

我无法在 TMR 中找到任何关于 RAM 保留的参考。

我希望你能就这一问题提出意见。

谢谢!

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

    您好!

    RAM 值在看门狗复位时将保留、但如果您正在讨论变量、则会在 cinit 中进行这些获取初始化。 为了避免这种情况、你可以直接访问代码中未使用的 RAM 位置(你可以将其保留在链接器 cmd 文件中)。  

    此致、

    维维克·辛格

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

    您好、感谢您快速重播。
    您能否分享一个相关示例或文档来说明如何执行该操作?

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

    通过直接存储器存取仅读取/写入该值-

    *(long int *) memory_addr =值;

    使用此值时-

    if (*(long int *) memory_addr == value){

    ——

    ——

    在链接器 cmd 文件中、您可以定义特定于存储器范围的段(取决于所需的位置数量)、并且不在其中分配任何内容。  

    此致、

    维维克·辛格

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

    如果我理解正确、请:

    RAM 未初始化。

    变量会得到 初始化。



    如果我希望 RAM 中的数据在 启动时未初始化,我应该直接按地址使用 RAM 空间,而不  给该 ARIA 分配变量。

    顺便说一下、如果没有变量、RAM 空间将不会被初始化。

    对吧?

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

    没错。

    此致、

    维维克·辛格