您好专家、
我的客户在生产之前遇到了一些棘手的问题。
背景信息:他们需要通过将 F28335替换为 F28235来降低产品成本。 如果它们只替换 F283335项目中的那些库和配置、 则代码 在 F28235上运行正常。 他们在此项目中使用串行引导加载 程序、但如果他们对代码进行任何更改、例如在应用程序中添加一些变量、则引导加载程序将不起作用。 它们使用 CPU 定时器 来切换 GPIO 以 馈入外部安全装置。 在其系统中、如果看门狗复位、整个引导加载程序串行通信将挂起。 我怀疑他们创建的 S19格式固件存在一些问题、例如、考虑 到以下事实、将 PIE 矢量放置在错误的位置。
事实第一:如果他们通过调试器下载.out 版本的固件、则永远不会出现此问题。
事实2:每次他们对代码进行微小修改(如创建变量)并通过串行引导加载程序更新此 S19格式固件时、新代码 将不会在 CPU 计时 器中断未进入时正常运行。
我的问题是:
问题1:对 S19格式固件进行编程后、您是否有任何解决方案来检查闪存中的内容是否正确? 我尝试连接调试器并将内容保存在内存浏览器中。
Q2:F28335和 F28235中的中断配置是否相同?
问题3:我能否从内存浏览器中创建.out 文件并使其与用于编程芯片的.out 文件相同? 如果可以、如何?
Q4:我们从 同一 CCS 项目生成了.out 固件和 S19固件。 如何检查这两个文件以查看从.out 生成 S19的过程中是否存在任何问题?
谢谢!