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:更改外部闪存上的出厂映像

Guru**** 2554780 points
Other Parts Discussed in Thread: CC1352R, UNIFLASH

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

https://e2e.ti.com/support/wireless-connectivity/sub-1-ghz-group/sub-1-ghz/f/sub-1-ghz-forum/1004167/cc1352r-change-factory-image-on-external-flash

器件型号:CC1352R
主题中讨论的其他器件: UNIFLASH

您好!

我想更改 CC1352R 外部闪存上的出厂映像。 我正在使用集中器 OAD 项目。

如何更换出厂映像?

我创建了 BIM 和应用的合并映像、然后从合并的十六进制创建了生产映像、然后使用了 UniFlash、工厂映像仍然是原始出厂映像。

如何更换它?

此致、

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

    您好、Boris、

    您使用的是哪个软件组件? 例如 TI 15.4-Stack?

    在大多数情况下、您可以在示例自述文件中找到有关如何执行此操作的说明。 链接下面的片外 TI 15.4-Stack 传感器示例自述文件。 向下滚动至"恢复出厂映像":

    https://dev.ti.com/tirex/explore/node?node=APLA7sow.9uat.yYR9THcQ__pTTHBmu__LATEST 

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

    您好!

    我的问题不是如何恢复出厂映像、而是如何创建出厂映像并将其刻录到闪存中、以便在恢复出厂映像时、我将拥有我的映像、而不是默认映像。

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

    您好、Boris、

    很抱歉、我对这个有点快。  

    但是、您注意到:  

    "但是、为了使此功能有用、首先需要将出厂映像保存到外部闪存中。 幸运的是、当 BIM 启动且当前没有出厂映像且当前内部映像有效时、将有效制作当前内部映像的副本、从而创建当前映像的备份。 这很有用、但不会提供除冗余之外的任何特殊功能。 相反、您可以首先使用 BLE Simple Peripheral OAD 应用和 BIM 刷写 LP、以便创建该映像的备份。 然后使用 BLE OAD 将传感器15.4映像发送到 LP。 现在、无论您需要什么、都可以切换到出厂映像并升级到所需的任何映像。"

    因此、对新的出厂映像进行编程应与擦除外部闪存一样简单、然后使用 BIM +有效映像对器件进行编程、然后启动器件。

     

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

    好的、我会尝试它。

    外部闪存可通过 UniFlash 或闪存编程器2擦除、对吧?

    此致、

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

    可以、也可以。

    让我知道它是怎么发展的!

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

    大家好、有些东西对我来说不起作用。

    我首先通过 UniFlash 擦除闪存:

    然后、我通过 UniFlash 将 BIM 映像与应用映像一起写入:

    下面是我要写入闪存的图像的标题:

    您可以看到长度为0x137ec、软版本为0x2。

    然后我复位电路板,并在我更改 BIM 项目的代码以到达 BIM_REVertFactoryImage()后开始调试 BIM 项目。 在调试器中、我看到:

    在元数据地址 Hdr 中、我有具有不同长度和软版本0x1的图像。

    我出了什么问题? 我是否未正确擦除外部闪存? 擦除外部闪存后、它有什么旧映像?

    此致、

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

    您好 Ben、

    您能否尝试使用此文件擦除外部闪存:

    /examples/rtos/CC1352R1_LAUNCHXL/easylink/hexfiles/offChipOad/ccs/erase_storage_offchip_cc13x2lp.hex

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

    您好!  

    谢谢、这已经擦除了闪存、现在我可以看到 metadataHdr 全部为0xff。

    BIM 仍然不会将映像写入外部闪存。 当我调试未经修改的 BIM 时,我在调试器中看到我到达 checkImagesIntFlash()函数并且从不返回:


    然后,我使用修改后的 BIM 重新启动调试器,该 BIM 会转至 Bim_reertFactoryImage(),并且我仍会在从外部闪存读取的出厂映像元数据标头中看到所有的0xff。

    我是否应该在 BIM 项目中定义某项内容或更改某项内容 、以便在外部闪存为空时将映像从内部闪存复制到外部闪存出厂映像空间?

    此致、

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

    您好 Ben、

    BIM 运行时、它应检查应用程序映像的字段并相应地更改它们(例如映像有效字段)。 这应该在将映像写入外部闪存之前发生。 您能否再次检查此项?

    谢谢、

    玛丽·H.