太多的 CC2530器件在现场发生故障-系统因某种原因锁定。 我无法使用常规流程。
在检查所有选项后、所有这些选项都归结为使用"针对 C-SPY 的调试信息"生成代码。
我尝试禁用优化等。 非常强烈、该选项确实可以实现。
我通过将故障器件中的闪存内容读取到十六进制文件来检查这一点、然后在每次部分闪存更新之前将该文件重新加载到器件中、其中保护 NV 存储器和内部信息不被覆盖(闪存页120及以上(理论上、122及以上就足够了)。
一旦启用了"C-SPY 的调试信息"、错误行为就会消失。
与此同时、这是一个鸡肉和鸡蛋问题-当 C-SPY 被禁用时、我无法进行详细调试、而当启用 C-SPY 时、这个问题消失了。 它看起来像是嵌入式软件的 Heisenberg 原则。
无论如何、我希望继续自动生成十六进制文件。
我尝试了"Extra Output"选项卡、也可以在其中选中 tickbox、但不会生成"...A51"文件(项目名称已留空)。 当启用"具有运行时控制模块"时、无法选择该模块、但如屏幕截图所示、它仍然显示"次级输出:(对于所选格式、无)。 因此、这可能是一种 IDE 临界情况、即使"额外输出"实际上并不适用、也可以对其进行配置。
我目前看到的唯一替代方法是以交互方式对器件进行编程、然后将内容读回十六进制文件、清理该十六进制文件并将其用于对其他器件进行编程。 这需要几个手动干预:使用 IAR IDE 进行编程、使用闪存编程器进行回读、以及 PD 手动清理(/最终为此创建脚本)。
欢迎提出任何其他建议。


额外输出设置:
