gpt4 book ai didi

c - 为 PCB 应用程序生成加载时间序列号

转载 作者:太空宇宙 更新时间:2023-11-04 04:11:38 25 4
gpt4 key购买 nike

我试图在加载时生成一个增量值,用于“序列化”具有唯一代码值的 PCB。不是 ld 或预处理器命令方面的专家,因此寻求帮助。

该值将用于加载代码的每个板的唯一 ID,也将用作现场板的计数器。

对于如何完成此操作,我没有先入为主的想法,因此任何可以帮助我入门的可行答案(包括预处理器宏)都可以。在我过去的日子里,我记得在链接器文件中添加了几行来实现这一点,但我一直无法在任何地方(包括我大脑的内存细胞)恢复该信息。

答案越简单越好。

最佳答案

我对这个问题的解决方案非常简单。

包含的二进制文件

const char *serial = "XY-00000";

然后我写了一个简短的程序,归结为:

char uniqueserial [8];
/* Generate serial - this was an SQL call to the manufacturing DB */
char *array;
/* Read binary into array */
memcpy(memmem(array, "XY-00000",8), uniqueserial,8);
/* Write array to temp bin file for flashing */

取决于串行模板字符串在二进制文件中的唯一性。使用 strings 命令检查。由于口味,我禁用了 crc 保护的对象文件。我喜欢我的嵌入式二进制文件是精确的内存转储。

关于c - 为 PCB 应用程序生成加载时间序列号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56615934/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com