主题中讨论的其他器件: UNIFLASH
我们有一个基于 CC2640R2F 的器件、使用 CCS v10、SDK v5.10.00.02、BLE4堆栈、片外 OAD 开发的固件。 我们需要一个过程来生成将 BIM、堆栈和应用程序组合在一起的单个映像。 我们已按照涉及使用 srec_cat.exe 生成十六进制文件的指令进行操作、但在使用该二进制文件对器件进行编程后、器件无法正常工作。
到目前为止、我们唯一成功的过程是从 CCS 对堆栈进行编程、使用 UniFlash 对组合堆栈和应用.bin 文件进行编程、然后使用 CCS 对 BIM 进行编程。 这是基于早期开发中遵循的一些说明。 在最后一步对 BIM 进行编程后、器件始终复位并开始广播。 由于堆栈包含在第二步编程的.bin 文件中、因此该过程并不完全有意义、但如果我们跳过从 CCS 对堆栈进行编程的第一步、器件将无法正常工作。
使用如下命令创建了结合 BIM、栈和应用程序的.hex 文件:
srec_cat bim_oad_offchip_app_FlashOnly"。hex -英特尔 app_oad_offchip_FlashROM_unsecure_oad.bin -bin -o app_oad_product.hex
...根据此处的说明:
使用 UniFlash 使用该文件对器件进行编程后、器件无法正常工作、无法手动复位。 我们发现、如果我们随后返回并将 CCS 中的堆栈编程到器件上、然后进行手动复位、则它将开始广播并正常工作、包括接收 OTA 更新。
这是否指向创建统一十六进制文件时出现的任何特定问题? 馈送到 srec_cat 工具的.bin 文件适用于 OTA 固件更新、因此它显然有效。 CCS 下载使用.out 文件进行堆栈和 BIM、但我不知道这是相关的。