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.

[参考译文] MSP430F6779:无初始变量

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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/1268992/msp430f6779-variable-no-initial

器件型号:MSP430F6779

定义变量 no init 时。

例如、

__no_init static volatile uint8_t Flag01;

 变量中的值是什么?  

该值取决于什么?

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

    您编写的代码不能对该代码中的内容作出推定、 标志01 直到函数内的代码将值显式写入该值。

    谢谢。此致、

    -乔治

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

    我有2个问题。

    1. 输入的数据 001:RAM 如果不是 init、则数据应 随机 对吧?
    2. 通过我们在无 Vcc 电源的情况下的测试、然后在 Vcc 时检查数据是固定的值(例如、0x71、0x79)。 为什么数据只有2个值(0x71、0x79)变化、而不是随机的?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    正如乔治提到的,你不能假设什么是包含在 Flag01作为其未初始化。 您看到的值可以是任何值、也可以是器件引导中残留的数据、具体取决于地址编译器坚持使用该符号。  

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

    RAM 单元是双稳态的、因此在上电时、它们的初始状态将取决于许多因素。 包括单元内的工艺变化。 这可能会导致特定电芯出现相当重复的上电状态。 RAM 单元之间以及器件之间的差异。

    它不是好像有一些守护程序在那里刺激东西,以提供真正随机的初始值。

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

    与软件错误调查相关的是、此 Flag01未初始化。

     

    只有当此值为0x01时才会出现错误(预期在导通和关断 VCC 时会多次重现)。

    您是否认为此值有时可能是0x01 (但现在我无法重现它、它在0x71和0x79之间变化)?