大家好!
我将使用 SIMPLELINK-LOWPOWER-F2-SDK v7.40在 CC2652P1F 上的主机测试示例。 当我使用闪存编程器2将 GBL 文件刷写到 ble chip 时、错误提示:"Unknown record type:3"。 然后我发现 GBL 大小为445Kb、但 CC2652P 上的闪存大小为352Kb。
要在 CC2652P 上刷写映像、是否可以减小 GBL 大小?
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.
大家好!
我将使用 SIMPLELINK-LOWPOWER-F2-SDK v7.40在 CC2652P1F 上的主机测试示例。 当我使用闪存编程器2将 GBL 文件刷写到 ble chip 时、错误提示:"Unknown record type:3"。 然后我发现 GBL 大小为445Kb、但 CC2652P 上的闪存大小为352Kb。
要在 CC2652P 上刷写映像、是否可以减小 GBL 大小?
您好!
您如何生成 GBL 文件?
SDK 中的 host_test 示例应生成.out 或.hex 文件、并且应使用正确的固件大小构建:
dev.ti.com/.../node
谢谢!
Toby
嗨、West:
这是未修改的 host_test 吗?
您正在使用哪个 CCS 版本?
您能否尝试构建驱动程序示例?
在 CCS 中构建此函数时、可以看到以下用于内存分配(窗口-->显示视图-->内存分配):
实际固件映像占用170KB 闪存。 这等效于.map 文件、其中包含以下文件: FLASH 00000000 00056000 0002988f 0002c771 R X
(0x2988F 是使用的闪存)。
生成的十六进制文件为362kB。
造成差异的原因是 hex 文件包含要编程到器件上的完整映像(包括"empty"空间)。
您能否查看在.map 文件或"内存分配"中看到的内容?
谢谢!
Toby
尊敬的 Toby:
感谢您的答复。 我是 West 的同事。
我们只做了一点修改。 更改后门的 DIO 和波特率、以及启用广播通道(添加标志 DADV_RPT_INC_CHANNEL=1)。
以下是我的"内存分配"。
和映射文件中的闪存如下所示。
闪存 00000000 00056000 0002b544 0002aabc R X
但是、hex 文件的大小仍保留443KB。 您能告诉我们如何减少文件中的"空"空间吗?
谢谢!
死记硬背
尊敬的 Toby:
我们将 使用 CCS v12构建项目。
我从 Resource Explorer 导入了 host_test 项目、项目路径为
SimpleLink CC13xx CC26xx SDK (7.40.00.77)-> CC2652PSIP LaunchPad -> BLE5-Stack -> host_test -> TI Clang 编译器。 该项目是在未进行任何更改的情况下构建的、"workspace -> Release"中的.hex 文件在芯片闪存大小352KB 的基础上仍然为439KB。 .map 文件中的闪存配置为"00000000 00056000 0002af60 0002b0a0 R X"。
希望这些信息有所帮助。
谢谢。
西部
嗨、West:
我想这可能与项目生成 hex 文件的方式有关。
尝试执行以下步骤:
对我来说、这会将 hex 文件的时间缩短至更合理的值。
谢谢!
Toby
请尝试此处的建议: e2e.ti.com/.../ccs-generated-hex-files
具体添加一个编译后处理步骤: "${CG_TOOL_HEX}"-order ms --memwidth=8 --romwidth=8 --Intel -o "${ProjName}.hex""${ProjName}.out"
SDK v7.40中 CC2652P 的代码大小修改表明 DirecTV 计划的 开发值得注意。 无论是扩展还是减小、此类更改通常都反映了优化或附加功能。 开发人员应仔细评估对存储器使用和性能的影响、确保与现有代码库的兼容性并考虑未来项目的潜在优势。 |