• 资料介绍
    • 1、前言
    • 2、规则
    • 3、STM32CubeIDE 用户如何使用 Bash
    • 4、解决 Bash 和 Bat 混用的问题举例
    • 5、小结
  • 资料预览
  • 相关推荐
申请入驻 产业图谱

LAT1455 分辨OEMiROT的Bash与BAT脚本

03/11 16:46
522
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

LAT1455 分辨OEMiROT的Bash与BAT脚本

391.89 KB

1、前言

OEMiROT 的烧录脚本是有两种形式,一种是 Bash 格式,一种是 BAT。我们可以从STM32CubeRepositorySTM32Cube_FW_H5_V1.3.0ProjectsNUCLEOH563ZIROT_ProvisioningOEMiROT 目录能看到这一点。

无论是 Bash 格式还是 BAT, 基于 STM32Cube 生态工具,都可以在 Windows 上运行。但是这两种格式在 OEMiROT 上下文里并不能由着我们的开发习惯随意使用。本文就来说明正确使用的规则和混用的方法。

2、规则

Bash 和 Bat 文件是否可以随意选择使用,从STM32CubeRepositorySTM32Cube_FW_H5_V1.3.0ProjectsNUCLEOH563ZIROT_ProvisioningOEMiROT 是看不出来的。也就是说,如果你不去修改编译代码,可能什么问题都没有。答案是在 STM32CubeRepositorySTM32Cube_FW_H5_V1.3.0ProjectsNUCLEOH563ZIApplicationsROTOEMiROT_Boot 的几个 IDE 的脚本里。我们可以看到,对于STM32CubeIDE(STM32CubeIDE 目录)使用的是 postbuild.sh。

3、STM32CubeIDE 用户如何使用 Bash

STM32CubeIDE 用户使用 Bash,可以安装一个 Git Bash 软件,那么在 Git Bash 的命令行就可以执行 ROT_Provisioning 的脚本。

4、解决 Bash 和 Bat 混用的问题举例

假设我们使用 STM32CubeIDE 进行编译。我们知道 OEMiROT 的默认行为是Overwrite,也就是新的固件会覆盖旧的固件,原理上只需要注解掉位于STM32CubeRepositorySTM32Cube_FW_H5_V1.3.0ProjectsNUCLEOH563ZIApplicationsROTOEMiROT_BootInc的 flash_layout.h 中的宏。不过,因为 OVERWRITE 到 SWAP 会引起 Flash 布局的改变,因此,改动之后,假如我们习惯 BAT,那么使用STM32CubeRepositorySTM32Cube_FW_H5_V1.3.0ProjectsNUCLEOH563ZIROT_ProvisioningOEMiROT 的 provisioning.bat 烧录后,串口终端会出现错误。

5、小结

本文针对 OEMiROT 里提供的 Bash 和 BAT 提供了辨析,让 STM32 开发人员能够正确选择相应的脚本进行运行,或者修改相应的脚本符合个人的使用习惯。

资料预览

相关推荐