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.

[参考译文] CC2652P:如何针对 SysConfig 设置存储器保护?

Guru**** 2582405 points
Other Parts Discussed in Thread: CC1352P, SYSCONFIG

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

https://e2e.ti.com/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/1365574/cc2652p-how-to-set-the-memory-protect-from-sysconfig

器件型号:CC2652P
主题中讨论的其他器件:CC1352PSysConfig

您好、专家:

在某些情况下、我的客户需要在内部存储器的特定地址中写入一些数据、如下例所示。

nvsinternal_CC1352P_2_LAUNCHXL_freertos_ticlang

它们 需要保护内部存储器的特定地址、并且在通过 UART 接口升级 FW 时无法擦除。

我是否可以知道如何在 SysConfig 中设置以下存储器扇区保护?

默认_CCFG_CCFG_PROT_31_0

当我设置受保护扇区时、无法将数据写入受保护存储器地址。 如何禁用代码中的保护?

Br、

弗兰克

Br、

弗兰克

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

    Frank、您好!

    这里使用的 SDK 版本和 CCS 版本是什么?

    您尝试保护的确切存储器地址是多少?它是否在由 syscfg 覆盖的段中?

    我们可能不需要将扇区设置为受保护、让 syscfg 覆盖该扇区、然后使用 memset 将该扇区的特定存储器部分设置回您的预期值。  

    谢谢。
    A·F

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

    Alex:

     

    此处使用的 SDK 版本和 CCS 版本是什么?

    您试图保护的确切内存地址是多少?是否在 syscfg 覆盖的段中?

    我无法从 SysConfig 中找到存储器保护设置。

    Br、

    弗兰克

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

    尊敬的 Frank:

    恐怕在 CC2652器件上、SysConfig 不会公开内存保护设置。

    存储器设置保护是通过 ti_device_config.c 文件末尾包含的文件设置的(由 SysConfig 生成):

    /*
     *  ======== Include Base Settings for device ========
     */
    
    #include <ti/devices/DeviceFamily.h>
    #include DeviceFamily_constructPath(startup_files/ccfg.c)
    

    假设您使用的是 CC2652、则 ccfg.c 文件存储在 \source\ti\devices\cc13x2_cc26x2\startup_files。
    要更改配置、您应该

    • 要么修改我所指的文件-在这种情况下、可能会产生难以在 SDK 迁移中维护的代码  
    • 或修改 SysConfig 生成的文件(若要执行此操作、请确保禁止 SysConfig 生成该文件)、以添加所需的闪存保护设置

    我希望这将有所帮助、

    此致、