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.

[参考译文] CC2652R:片上 OAD 升级问题

Guru**** 2905440 points

Other Parts Discussed in Thread: UNIFLASH, SYSCONFIG

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

https://e2e.ti.com/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/1065035/cc2652r-onchip-oad-upgrade-issue

器件型号:CC2652R
主题中讨论的其他器件:UNIFLASHSysConfig

大家好、

以下是客户提出的4个问题、可能需要您的帮助:

如   BLE5-Stack 用户向导 OAD 部分的片上 OAD BIM 中所述、复位后、BIM 根据复位后图像标头的镜像身份验证字段(4字节)中的0奇偶校验来确定执行哪个应用程序。 此镜像身份验证字段在用户应用程序中、是否会在 OAD 过程中修改? 验证字段作为共享 RAM 变量的情况又如何呢?

2. 一个用于升级的永久应用程序实现了 OAD 配置文件、是否需要使用 uniflash 手动加载到芯片中? 此外、如何确定其闪存中的地址?

3. simple_preipher_CC26x2R1_LAUNCH_tiROT_ticlang 工程可在 TI 器件中找到-> syscfg 文件中的器件配置并配置 CCFG。 CCFG 也可以在 bim 项目中配置、因此 bim 中设置的 CCFG 会先被 bim 覆盖、然后被 simple_presial 项目覆盖吗? 或者、simple_prehal 项目优先、bim 会覆盖 simple_prehal 中的 CCFG 集吗?

4. 当片上 OAD 被升级时、下载的程序是否被放置在空闲闪存区域内? 它如何知道哪些闪存区域处于空闲状态? 在下载之前、它是否会告知免费闪存是否适合下载的程序?

 CC2652R1总共有352KB、最后一个扇区8KB 需要留给 BIM 程序、然后剩余344KB 的闪存、120KB 的永久应用程序和140KB 的 simple_prehal。 只剩下84KB 空间来容纳另一个升级的 simple_peripheral 程序、但这还不够。

您可以帮助检查此案例吗? 谢谢。

此致、

樱桃

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

    您好!

    最新更新如下:

    关于1:通过查看 bim_onchip 工程中 bim_main.c 主函数中的实现、此图像验证字段位于用户应用程序图像头文件0x00000000的第0页。 BIM 首先扫描它、如果通过了各种检查(包括 CRC、安全验证、甚至是0个验证字段等)、则直接运行用户应用程序。 如果出现错误、请继续查找持久应用程序、如果发现则运行该应用程序、如果未找到则进入低功耗模式。

    关于2:需要在\ti\simplelink_cc13x2_26x2_sdk_5_20_00_52\examples\rtos\CC26X2R1_LAUNCHXL_ble5stack 中手动刷新名为 persistent_app 的持久性应用程序、默认地址为0x38000。 在 persistent_app 中配置

    关于4和5:下载的程序会直接覆盖先前的应用程序、即下载从第0页开始、因此默认情况下、可以容纳小于0x38000的程序。

    您能帮我们看看问题3吗? 谢谢。

    此致、

    樱桃

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

    樱桃、您好!

    感谢您的耐心、很抱歉在假日期间延迟回复。

    [引用 userid="496057" URL"~/support/wireless-connectivity/other-wireless-group/other-wireless/f/other-wireless-technologies-forum 1065035/cc2652r-on-chip-oad-upgrade-issue]simple_preipher_CC26x2R1_LAUNCHE_TIROT_TIROTICANG Engineering 可在 TI 器件中找到-> syscfg 文件中的器件配置并配置 CCFG。 CCFG 也可以在 bim 项目中配置、因此 bim 中设置的 CCFG 会先被 bim 覆盖、然后被 simple_presial 项目覆盖吗? 或者、是否首先执行 simple_prehemal 项目、然后 bim 将覆盖 simple_prehemal 中的 CCFG 集?

    尽管此选项出现在 SysConfig 中、但我发现在 simple_peripheral on chip oad 项目(在 SDK 5.30上测试)中不可选择。 BIM 拥有用于片上 OAD 的 CCFG 区域、因此可以避免上述冲突。  我无法选中"Enable SysConfig CCFG Configuration"复选框。

    如果您有任何可以帮助解决的未回答问题、请告诉我。

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

    尊敬的 Ammar:

    再次感谢您的支持!

    他们使用的 SDK 版本为5.20、并且可以  在 simple_peripheral_oad_onchip.syscfg 中配置 CCFG、请参阅下图:

    此致、

    樱桃

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

    樱桃、您好!

    经过进一步检查、尽管这些选项似乎可以使用 SysConfig 进行配置、但您会发现该工具不会生成覆盖条目的所需文件(ti_devices_config.c)。 这意味着 SysConfig 中的任何更改都不会针对 simple_peripheral_oad_onchip 应用对 CCFG 进行。

    这有点误导、但在上一次 SDK 更新至5.30期间、我们已经解决了这一问题。

    希望这对您有所帮助。

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

    尊敬的 Ammar:

    再次感谢您的帮助! 它确实解决了这里的问题。

    此致、

    樱桃