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.

[参考译文] MSP430F6733:对MSPBoot应用报告提出质疑(slaa600a)

Guru**** 2513185 points
Other Parts Discussed in Thread: MSP430F6733

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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/572840/msp430f6733-challenging-the-mspboot-application-report-slaa600a

部件号:MSP430F6733

你好

我们 考虑基于MSP430F6733 的其中一种产品中基于MSPBoot sla600a应用报告的引导加载程序实施。

我们的一位高级工程师对启动力机制提出了质疑(选项2)

报告中说:

"

2.2 .1.1 强制引导加载程序模式

即使使用有效的应用程序,也可以通过以下选项强制引导加载程序模式:

•备选案文1:".  "

•选项2:应用程序调用bootloader模式的执行。 变量StatCtrl和passwd是保留的,并在应用程序和bootloader之间共享。 要强制引导加载程序模式,应用程序会将这些变量设置为:

passwd = 0xC0DE

StatCtrl.BIT0 = 1

"

但是,重 置后,共享变量(passwd和StatCtrl)写入RAM时会有一个随机值,因此:

1.复位后这些字是否保留其值(RAM如何在复位后保留其值)?

2.为设备通电时,共享变量 具有随机 值,因此可能会出现这种情况

passwd = 0xC0DE

StatCtrl.BIT0 = 1

而我们却有一个意外的引导加载程序行为。

如何预防?

 

是否有人遇到过这类问题?

谢谢

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

    选项2假定MSP430器件上存储了有效的应用程序和引导加载器代码,两者共享passwd和StatCtrl的约定RAM空间。 运行应用程序时,会出现触发TI_MSPBoot_JumpToBoot函数的命令,如App2_MSPBoot项目的TI_MSPBoot_Mgr_Vectors_[xxxxx].c文件中所示。 passwd和statCtrl在RAM中更新,然后过期的监视程序计时器会强制执行PUC,这种重置不会擦除RAM内容。 启动加载程序(MSPBoot项目)将启动并检查是否已由应用程序强制启动模式(TI_MSPBoot_AppMgr_BootsForced函数,来自TI_MSPBoot_AppMgr.c),并且RAM中passwd和StatCtrl的存储值将确认这种情况。 这种情况与BOR或POR不同,后者将擦除RAM内容,并需要外部事件(选项1),以便在MCU上存储有效的应用程序时强制引导加载程序模式。

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

    您好Ryan

    感谢您的快速响应。 实际上,我们是通过使用BOR重新发送来强制启动的,到目前为止没有遇到任何问题… 只是想知道它是如何工作的。

    您是否有问题2的答案?

    2.为设备供电时,共享变量 具有随机 值,因此可能:passwd = 0xC0DE和StatCtrl.BIT0 =1,而我们会出现意外的引导加载程序行为。

    如何预防?

    非常感谢

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

    RAM在开机时几乎不是真正随机的,通常为0x00或0xFF。 这3个字节以这些精确值随机重新启动的可能性是1 (以16.8 百万为单位)。

    此致,
    Ryan