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.在构建步骤中粘贴上一步复制的内容。

相关推荐
wuyk55516 小时前
嵌入式故障诊断-Bug002-局部大数组压栈高温必死机
stm32·单片机·嵌入式硬件·mcu·物联网·51单片机·嵌入式实时数据库
Dev_XH20 小时前
【成品设计】基于沁恒单片机的电动汽车充电站智慧调度系统
stm32·单片机·嵌入式硬件·物联网
Zw-awa1 天前
嵌入式OLED表驱动菜单:用一张表、一个栈和一个窗口重写表驱动菜单
stm32
蜀黍@猿1 天前
ARM 汇编入门(十):标量浮点与 VFP 指令全解析
汇编·arm开发·stm32·mcu
不脱发的程序猿1 天前
STM32和VS1053制作电子琴
stm32·单片机·嵌入式硬件·midi·vs1053
Zw-awa2 天前
C语言函数指针与宏实战:从回调、表驱动菜单到X-Macro,讲透嵌入式代码解耦
stm32
无敌贵点大王2 天前
从寄存器层面重学STM32(9)——DMA理论
stm32·单片机·嵌入式硬件
Zw-awa3 天前
用两个按键做一个OLED菜单:先把选择和执行分开
stm32
Good白10193 天前
嵌入式:1.嵌入式入门|初识嵌入式、处理器、ARM与STM32
arm开发·stm32·嵌入式硬件
小李不想当小白3 天前
HAL库之UART(STM32 HAL库学习笔记)
笔记·stm32·单片机·嵌入式硬件·学习·嵌入式