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

相关推荐
巴巴媛6665 小时前
STM32学习笔记【32.BKP + RTC】
笔记·stm32·学习
吠品7 小时前
Python字典键获取的四种实用方法
stm32·单片机·嵌入式硬件
追兮兮8 小时前
MCUQuickStart:一键生成 STM32 / GD32 的 Keil、CMake、RTOS 工程
stm32·单片机·freertos·gd32·gcc·工程模版
小殷学长9 小时前
【单片机毕业设计25-基于stm32的导盲眼镜设计】
stm32·单片机·课程设计
辰哥单片机设计9 小时前
STM32智能病房呼叫系统
stm32·单片机·嵌入式硬件
水利行业RTU手艺人1 天前
RTU固件中的“数据保险箱”——离线数据补发系统设计
c++·stm32·单片机·物联网
bu_shuo1 天前
STM32-BOOT的三种启动方式
stm32·单片机·嵌入式硬件
梁朝辉2 天前
STM32H750VBT6中ADCINP与INN什么区别
stm32·单片机·嵌入式硬件
kebidaixu2 天前
两轮车换电 BMS 的模拟前端中颖 SH367306 AFE 芯片详解
stm32
kebidaixu2 天前
两轮车换电 BMS 的模拟前端中颖 SH367306 AFE 芯片调试实录:四个关键问题与解决方案
stm32