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.

[参考译文] CC2340R5-Q1:如何在不擦除的情况下进行烧写

Guru**** 2591690 points
Other Parts Discussed in Thread: UNIFLASH, CC2340R5

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

https://e2e.ti.com/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/1364121/cc2340r5-q1-how-to-burn-without-erasing

器件型号:CC2340R5-Q1
主题中讨论的其他器件:UNIFLASHCC2340R5

您好、TI

如何在不擦除的情况下烧写?

我正在使用 uniflash 进行烧录、如果未选择擦除、烧录操作会报告错误。

此致

普雷斯顿

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

    Preston、

    当您说"刻录"时、您能否澄清一下、您的意思是正确刷写?

    请提供所看到的错误以及您正在使用的 Uniflash 的版本。  

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

    您好、Evan

    是的、我的意思是闪烁。

    下面是我看到的错误和 Uniflash 设置屏幕、我使用的是 uniflash 版本8.4.0.4458。

    此致

    普雷斯顿

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

    您好 Preston:  

    我能不能问为什么刷写器件而不擦除闪存? 是否有您希望保持不变的特定地区?  

    如果您希望保持 CCFG 部分不变、则可以选择  芯片擦除(CCFG 中指定的保留扇区) 。   

    请阅读 用户指南的非易失性接口部分、其中将说明在重新闪存之前必须擦除闪存。  

    如果您还有任何问题、请告诉我!  

    谢谢。  

    艾萨克

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

    您好、 

    我们当前需要将工厂数据(例如产品 ID)保存在闪存中、不允许擦除。

    我正在使用 NVS 请求0x7f000-0x80000空间以保存工厂 数据、但重新闪存后、该区域会被擦除。

    是否有办法可以保存这些数据、以免在重新闪存时被擦除?  

    或者、是否有不会擦除的用户存储数据区域?

    此致

    普雷斯顿

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

    您好 Preston:  

    您能否向我提供您正在使用的 SDK?  

    对于给您带来的不便、我深表歉意、但我仍在努力进行回复。 请在周五期待解答。  

    谢谢。  

    艾萨克

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

    您好、 

    我正在使用的 SDK 为 simplelink_lowpower_f3_sdk_7_40_00_64。

    在此之前、我参考 nvsinternal_LP_EM_CC2340R5_freertos_ticlang 以使用 NVS 读取/写入函数。

    此致

    普雷斯顿

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

    您好 Preston:  

    技术参考手册参考 了 chipEraseRetain。 可以设置此字段、以便在尝试重新刷写器件时保留特定的闪存区域。 请阅读第8.2.2、8.2.4.2和8.3.2.3节以了解更多信息。  此外、该字段包含在 hw_ccfg.h 文件中。  

    如果您有任何问题、请告诉我!  

    谢谢。  

    艾萨克

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

    您好、 

    我的工厂 数据闪存区域范围是0x7F000至0x80000。

    首先,我通过 NVS_WRITE ()将出厂数据写入上述区域。

    然后、我注释掉了与操作 NVS 相关的代码、并 重新刷写了代码。 此区域仍恢复为0xFF。

    我的闪存保护设置如下图所示:

    我能不能问、是否存在导致扇区不被保留的错误配置? 我的理解是、通过将 Erase/retain、Main Sectors 32-255选项中的数据更改为1、这个扇区将受到保护。

    此致

    普雷斯顿

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

    您好 Preston:  

    由于您已针对此处出现的问题打开了另一个主题、因此我将关闭该主题并协助您打开新主题。  

    谢谢。  

    艾萨克