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:了解如何修改 CCFG

Guru**** 2650625 points

Other Parts Discussed in Thread: SYSCONFIG

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

https://e2e.ti.com/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/1569457/cc2340r5-about-how-to-modify-the-ccfg

器件型号:CC2340R5
主题:SysConfig 中讨论的其他器件

工具/软件:

你好。


我使用 SDK 8.40.00.61 评估软件。
现在、我遇到 CCFG 设置问题。


我想在特定时间更改 CCFG.permissions.allowDebugPort 的设置。
这需要什么样的 API 控制?


我计划首先将 CCFG 区域加载到 RAM 中、然后将其擦除、最后进行编程。
此控件是否有问题?


我正在使用一个名为“FlashEraseSector (CCFG)“的 API 进行擦除。 但是、响应会返回“FAPI_STATUS_FSM_ERROR",“,从而、从而导致控制失败。


我希望你支持这个问题。


提前感谢您。

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

    尊敬的 Kei:

    可以使用工程中的 syscfg 来配置 CCFG、在这种情况下、您需要导航到器件配置部分并更改调试配置部分。  

    谢谢、
    Alex F

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

    您好 Alex、

    我的目标是找到一种在执行期间以特定时间重写 CCFG 的方法。
    我认为 SysConfig 中的 CCFG 设置是首次应用的。
    我第一次想启用 CCFG.permissions.allowDebugPort、然后使用一种方法在中途将其禁用。

    谢谢。

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

    尊敬的 Kei:

    CCFG 在程序执行期间不可修改;对 CCFG 的更改专门在编译时通过 syscfg 完成。  

    谢谢、
    Alex F

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

    您好 Alex、

    谢谢你。


    我想更改 allowDebugPort 的原因是为了提高安全性。
    我想在运行时更改它的原因是在产品发布后调试产品。

    是否也无法在操作期间更改 CCFG 设置、然后在之后执行复位?


    我正在寻找替代方法。
    命令 SACI_CMD_FLASH_PROG_CCFG_SECTOR 是否可以满足该请求?

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

    尊敬的 Kei:

    我要更改 allowDebugPort 的原因是为了提高安全性。
    我想在运行时更改它的原因是要在产品发布后调试它。

    我建议您将调试配置从“Debug Always Allowed“(或“Debug Not Allowed“)更改为“Debug Required“(调试需要身份验证);这样您就可以设置调试器用于访问器件的密码。 如果有人试图在未使用正确密码的情况下访问设备、则会将其阻止。  

     

    [引述 userid=“479300" url="“ url="~“~/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/1569457/cc2340r5-about-how-to-modify-the-ccfg/6046991

    是否也无法在操作期间更改 CCFG 设置、然后在之后执行复位?

    [/报价]

    正确、出于安全原因、编译后无法修改 CCFG、必须重新刷写整个器件。  

    谢谢、
    Alex F

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

    您好 Alex、

    谢谢你。
    您的评论给了我新的见解。


    但是,我还没有放弃。
    根据用户指南(7.2.4 闪存)中的说明、建议可以访问 CCFG 区域。
    WEPRAUX >由于还有 WEPRNMN、因此我认为可以在 CCFG 区域控制闪存。 你怎么看?

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

    尊敬的 Kei:

    闪存控制用于 CCFG 部分之外的区域、该区域已经是器件的受保护区域、通常我们修改 CCFG 的唯一方法是首先进入引导加载程序并执行特定的命令以执行特定操作。  

    同样、出于安全原因、CCFG 区域的设计不允许应用程序修改、用户可借助引导加载程序/SWD 接口进行刷写。   

    我要更改 allowDebugPort 的原因是为了提高安全性。
    我想在运行时更改它的原因是要在产品发布后调试它。

    我在这里建议 的设置是需要验证调试、因为我们可以进行受密码保护的调试、如果您需要这样的调试、该调试仍允许您在发布后调试器件。  

    谢谢、
    Alex F

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

    您好、Alex。

    谢谢你。

    我已经查看了之前的答案、现在知道 CCFG 无法从应用程序重写。

    鉴于此、我想了解产品系统配置的推荐设计方法。

    背景

    • 我们的产品采用 OAD(无线下载)配置进行设计。
    • 因此、在上电或复位后、序列为:  MCU 引导  首先运行、然后运行  主应用程序  信号完整性。
    • 每个二进制文件都可能有自己的 SysConfig 设置。

    问题

    1. CCFG 如何影响 MCU 引导和主应用程序?
      具体来说、CCFG 是否仅在 MCU 引导时引用、还是每个固件(MCU 引导/主应用程序)都参考并在每次引导/加载时施加自己的 CCFG 设置?

    2. 我们应该如何管理和设计 MCU 引导和主应用程序的 SysConfig 设置?

      • 如果我们为每个目的生成单独的二进制文件、是否存在 CCFG 冲突或覆盖的风险?
      • 在 CCFG 处理方面、确保安全可靠的现场更新 (OAD) 的最佳实践是什么?

    我们希望收到您与 OAD 结构匹配的具体指导或配置示例。

    非常感谢您的支持!

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

    尊敬的 Kei:

    我有一个今天运行的示例、使用两个不同的图像、我在这两个图像之间切换、一个图像是 proprf、另一个是 BLE(因此它们具有非常不同的 syscfg);但是、它们都可以正常工作。 作为 本示例的注意事项 、我仅使用 MCUBoot 自己的 syscfg(*我与两个图像的设置或任何内容都不匹配)。

    通常这里仅使用 MCUBoot 自己的 CCFG、但在我的测试中、syscfg 中的其他差异(如驱动程序,而不是器件配置)似乎以某种方式延续(*等待内部团队的进一步反馈(如果这些差异是否正确)。

    关于 OAD 主题、我们有一个很好的 SLA 来解释如何做到这一点。  

    dev.ti.com/.../node

    谢谢、
    Alex F