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.

[参考译文] CC1352R:在调用 SysCtrlSystemReset 时保留变量数据

Guru**** 2540720 points


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

https://e2e.ti.com/support/wireless-connectivity/sub-1-ghz-group/sub-1-ghz/f/sub-1-ghz-forum/1066765/cc1352r-preserving-variable-data-on-calling-sysctrlsystemreset

部件号:CC1352R

我正在使用 CC1352在 IAR 中进行一个项目,我们会定期将芯片置于低功耗待机模式,或者我们正在为该项目调用休眠模式。 我们可以在这种模式下的任何时间从几秒钟到10分钟。 从该模式唤醒到活动模式后,我们将调用 SysCtrlSystemReset 以确保我们以干净的状态重新启动。 (这是一个旧的代码库,客户 担心长时间隐藏的错误的可能性,这些错误可能在长时间运行和多次睡眠/唤醒循环后出现,而无需重置软件。) 但问题在于,有两个不同的变量保存关键系统数据,这些数据在这些重置时不会丢失。 因为这可能每隔几秒发生一次,所以不能选择将变量存储在闪存中,然后在重新启动时再次读取它们。   这些变量的 A_NO_init 定义是否可以用于保留 SysCtrlSystemReset 调用上的数据?  

  • 如果__NO_init  起作用,定义变量之前是否需要在__NO_init 之外进行任何操作?
  • 如果 __NO_init 不起作用,我们是否可以使用其他软件选项?  在这一过程中,主板上的电源没有受到影响,因此我知道外部 RAM 芯片可以正常工作,但客户正在尝试降低主板成本,并且更愿意不在主板上安装外部 RAM,因此我们正在这里寻找一个软件解决方案。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    蒂姆,你好。

    我强烈建议将这些值存储在闪存中。 我们无法保证在整个重置过程中保留 RAM。 不支持使用 NO_init。

    谢谢,

    玛丽·H

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

    蒂姆,你好。

    我认为,在重置时,AUX_RAM 不是由 HW 调零,因此您可以尝试使用它来保存重置后所需的数据。

    此致

    迪米特尔·德维兹希耶夫