CubeIDE 下如何将版本号和日期关联。

  1. 使用__DATE__ 和__TIME__获取编译日期和时间。

  2. 将__DATE__ 和__TIME__转换成UINT

  3. 将转换后的数赋值给版本号。

  4. 设置工程保证每次都会重新编译对应文件。

对应函数如下:

cpp 复制代码
uint8_t VER_MAIN;
uint8_t VER_SUB;
uint8_t VER_MIN;
#include <stdlib.h>
void temp_version(void)
{
    // 获取编译日期和时间的字符串
    const char* compileDate = __DATE__;
    const char* compileTime = __TIME__;

    // 将月份映射到数字
    char monthStr[4];
    strncpy(monthStr, compileDate, 3);

    // 解析时间字符串,提取小时和分钟
    int hour, minute;
    sscanf(compileTime, "%d:%d", &hour, &minute);
    uint8_t day = atoi(compileDate + 4);
    VER_MAIN = day;
    VER_SUB = hour;
    VER_MIN = minute;
}

工程设置:

1.在工程中右击对应文件,选择"构建选择的文件"

2.复制控制台构建信息,需要复制整行

3.在构建步骤中粘贴上一步复制的内容。

相关推荐
我不是程序猿儿10 分钟前
【嵌入式】USBCDC学习目标--STM32 板载 USB 做 CDC 虚拟串口(Virtual COM Port)
stm32·单片机·嵌入式硬件·学习
学嵌入式的小杨同学25 分钟前
STM32 进阶封神之路(三十四):TFT LCD 深度全解 —— 显示原理、ILI9341 控制器、8080 并行接口与底层驱动体系
vscode·stm32·单片机·嵌入式硬件·mcu·智能硬件·嵌入式实时数据库
逐步前行1 小时前
HAL_NVIC
stm32·单片机·嵌入式硬件
养一回月亮!2 小时前
STM32F407VET6驱动1.8寸TFT LCD移植LVGL,实现矩阵按键控制UI
stm32·单片机·lvgl
zmj3203244 小时前
KW45的ISP模式
stm32·单片机·嵌入式硬件·kw45
AzusaFighting4 小时前
STM32F103R基于AI生成的HAL库DMA串口应用用例
stm32·单片机·嵌入式硬件
飞控架构之美5 小时前
多旋翼无人机系统组成(九)(多旋翼无人机的设计)
stm32·嵌入式硬件·硬件架构·无人机
飞控架构之美5 小时前
多旋翼无人机系统组成(八)(任务载荷系统详解)
stm32·嵌入式硬件·硬件架构·无人机
BUG_yechiyu5 小时前
STM32CubeMX使用9 配置Time4 PWM(DMA)输出
stm32·单片机·嵌入式硬件
学嵌入式的小杨同学5 小时前
STM32 进阶封神之路(三十五):TFT LCD 工程化实战 ——FSMC 高速驱动、多图层界面、中英文显示与图形引擎(完整可落地)
stm32·单片机·嵌入式硬件·mcu·硬件架构·硬件工程·智能硬件