你好
我正在使用 S32 Design Studio Platform v3.4与 S32K144 EVB进行应用程序开发。
目前,我能够 成功调试程序使用 S32 Design Studio 的调试器。但是,每当我尝试 运行运行应用程序时,都会出现 错误窗口并且应用程序无法按预期执行。
此外,在重 启板 后 ,先前加载的代码不会 自动运行 ,这表明代码可能不会 永久闪存到 MCU 中 , 只能在调试会话期间运行 。
我想了解一下:
为什么调试工作正常,但运行应用程序时会出错?
是否需要额外配置才能 永久闪存代码S32K144 MCU。
如果有任何 链接器设置、调试器设置或闪存编程器配置需要修改。
是否需要外部闪存编程器(如 PEMicro 闪存编程器),还是仅 S32 Design Studio 就足够了。
我的目标是正确地将应用程序刷新到内部闪存中,这样代码在RESET或重启电源后自动运行。
请告诉我解决这个问题的正确程序。
你好@KAVIN7
根据您提供的信息,我认为您首先使用调试配置闪存应用程序,代码运行正常,然后尝试使用运行配置再次闪存。
由于应用程序在调试模式下启动时会按预期运行,因此问题的可能原因确实可能是运行配置不正确。
要考虑的另一个重要问题是重置微控制器后会发生什么。如果程序仅在调试时运行,但在 RESET 后停止运行,则代码可能加载到 RAM 而不是闪存中。当代码放入 RAM 时,它在RESET或重新启动后不会保留,这可以解释为什么它在调试模式下闪存后会立即起作用,但之后不起作用。
最后,由于您使用的是 EVB,而且据我所知,您依赖的是板载调试器 (OpenSDA),因此请记住 OpenSDA 使用的是 PEmicro 固件。这一点很重要,因为从项目的运行配置中可以看到,与 PEmicro 接口自动生成的默认调试配置不同,PEmicro 没有现成的运行配置。
BR、VaneB