STM32 - Embedded IDE - GCC - 如何将编译得到的.bin固件添加CRC32校验码

导言


在《STM32F103_Bootloader程序开发06 - IAP升级用的App.bin增加CRC32校验码,确保固件完整性,防止"变砖"》讲解了在Keil环境下为编译得到的.bin固件添加CRC32校验码。最近,我正在将所有项目从Keil迁移到Vscode + EIDE开发。梳理在Vscode + EIDE环境下,怎样实现一样的效果。

项目地址:

github: https://github.com/q164129345/MCU_Develop/tree/main/bootloader14_stm32f103_move_to_vscode_eide

gitee(国内): https://gitee.com/wallace89/MCU_Develop/tree/main/bootloader14_stm32f103_move_to_vscode_eide

一、准备



如上所示,可以从github或者gitee的源码里找到crc_add.bat、srec_cat.exe。然后,放到vscode项目文件夹里。

github:https://github.com/q164129345/MCU_Develop/tree/main/bootloader13_stm32f103_standard_scb

gitee:https://gitee.com/wallace89/MCU_Develop/tree/main/bootloader13_stm32f103_standard_scb

二、修改crc_add.bat脚本


  1. 在build/Debug/里找到项目编译的.bin固件,一般是项目名.bin。我的这个项目的项目名是stm32f103zet6,所以代码编译生成的固件名是stm32f103zet6.bin。
  2. 将crc_add.bat的第8、9行按照图片来修改即可。(例如,我想将输出的的文件名改为robot_vcu.bin的话,将第9行改为set OUTPUT_FILE=.\build\Debug\robot_vcu.bin。)

三、修改构建器选项



四、编译固件



相关推荐
XiHongShi20165 天前
STM32F407 RTC定时器例程,建议保存
stm32·单片机·学习
优信电子5 天前
AIT1001 非接触式红外测温模块 STM32 驱动开发实战:从引脚到代码全解析
stm32·嵌入式·温度传感器·红外测温·非接触式测温·ait1001
深圳老胡5 天前
STM32F407 控制 L6470 步进电机驱动 —— 控制过程简介
笔记·stm32·单片机·嵌入式硬件·代码规范
wuyk5555 天前
《WiFi 嵌入式物联网开发全套实战》| 第 16 章 ESP32 AP+STA 双模共存原理与工程坑点
网络·stm32·物联网
Brilliantwxx5 天前
【STM32】 SPI Flash 驱动开发实战:阻塞模式驱动 W25Q64(含工程代码)
开发语言·stm32·单片机·嵌入式硬件
youcans_6 天前
【嵌入式软件AI编程】16. Claude Code 与 VS Code 的协同开发
stm32·mcu·嵌入式·ai编程·claude code
Zw-awa6 天前
按键接到 STM32 后:GPIO 输入到底读到了什么
stm32
MarkZhou6246 天前
智能蒸烤双核通信架构拆解:从冗余耦合到分层解耦
stm32·单片机·嵌入式硬件·架构·安卓·安全架构
chem41116 天前
STM32CubeMX Linux 开发环境搭建
stm32·单片机·linux系统
无敌贵点大王6 天前
RTThread学习记录11——RT-Thread 设备模型吃透:UART/ADC/PWM/PIN 到底有什么区别?
c语言·stm32·学习·链表