我正在尝试构建支持 HSE 的应用程序。但我该如何开始呢?我知道我需要
1.启用 HSE 固件安装
2.更新 SBAF?
3. 安装 HSE 固件
我有 S32K396-BGA-DC1 板,使用嵌入式调试控制器。
我有元器件:
HSE_FW_S32K396_0_2_50_0_D2411 HSE_DEMOAPP_S32K396_0_
2_50_0_D2411 RM758227-RM00286 HSE-B 固件参考手册-V2.7
不过,DEMOAPP 似乎在很大程度上依赖 TRACE32 脚本,而没有 TRACE32 我就无法使用。
ConfigTools 中的 IVT 工具不支持 S32K3 设备。IVT 表格内容必须手动定义和定制,RTD 没有提供配置工具。
HSE 固件的更新过程是通过更新服务完成的,必须从应用程序中调用该服务,并提供相应的固件版本。您可以参考 S32K344_HSE_FW_UPDATE 示例以获得指导。
此外,一旦在 MCU 上安装了 HSE 固件,为 HSE FW 分配的内存将保持保留状态,这意味着该内存区域不能被回收或用于应用代码。
关于 SBAF 更新过程,必须已安装 HSE 固件。之后,您需要验证 SBAF 是否是最新的。如果不是,则必须使用 HSE API 中 hseSbafUpdateSrv_t 结构定义的服务。作为参考,请查看 S32K344_SBAF_UPDATE 示例。
有关 SBAF 和 HSE 固件兼容性,请参阅下表:
最后请注意,HSE 演示应用程序仅用于演示 HSE 固件的功能。新版本的演示应用程序还包括最新的功能和改进,因此最新版本将永远是最佳参考。
谢谢。在交叉引用了示例和参考手册之后,现在情况变得更清楚了。
关于 IVT 和 HSE 固件,我仍然有些困惑。S32 配置工具中的 IVT 屏幕似乎只支持 QSPI 闪存映像?是否应该手动编辑启动标题来为嵌入式闪存映像构建 IVT?或者即使屏幕显示 QSPI 是唯一可用的启动源,它也能通过配置工具运行吗?据我所知,DemoExamples应用程序有手动编辑的boot_header和链接脚本,而且似乎根本没有使用S32配置工具。
使用通过IVT链接的嵌入式HSE固件将应用程序作为代码包,以确保HSE固件始终与主固件保持最新状态是否可行。还是说主应用程序需要管理 HSE 固件更新?在大约 2MB 的应用程序映像大小 (AB) 中,我们将有足够的空间容纳两者,只是尚不完全清楚在 IVT 中始终包含 HSE 固件是否可以,以及这在启动过程中意味着什么。
建议的 SBAF 更新流程是什么?关于 SBAF 和 HSE 固件安装之间的依赖关系,我找到了一些相互矛盾的信息,有些信息来源称应在 SBAF 更新之前安装 HSE 固件,有些则称可能需要在安装 HSE 映像之前更新 SBAF(HSE 需要较新的 SBAF)。
另外,在新设计中,S32K396 软件包中我们可以预期的最低 SBAF 版本是多少?我们是否可以假定至少是 0.15.0,还是说我们在生产中可能会遇到 SBAF 早期版本的芯片?
而且我假设在构建自己的应用程序时,较新的 DEMOAPP 示例是当前 HSW 固件集成源的正确参考?
作为 HSE DEMO APP 的替代方案,还提供用于通用 HSE 演示示例的 S32K3 MCU。这是 HSE DEMO APP 的移植版,但在本例中,它是为与 PEmicro 和 Design Studio 一起使用而设计的。这提供了不同的用例场景和示例,以展示搭载 S32K344 设备的 HSE 固件的功能。尽管不是您正在使用的特定设备,但HSE FW是相同的,因此它将是一个很好的参考和起点。
此外,还有一些应用说明和培训演示文稿可能对您入门 S32K3 设备的安全性有所帮助。可通过导航至文档 → 安全文档下的电气化应用 S32K39/37/36 微控制器主页访问。
BR、VaneB