打印
[STM32F1]

如何在电子产品的固件上写入产品序列号

[复制链接]
599|14
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
happy_10|  楼主 | 2021-6-9 21:42 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
想请教各位大神一个关于产品序列号的问题~
我们想给产品设置序列号,让产品联网后,后台能自动读出序列号。而且我们需要实现序列号标签(贴在机身和包装上),固件序列号一致。但是在开发过程发现,产品量产烧录的固件都是一样的,求各位大神指教一下产品固件的序列号是如何实现的?序列号通常是怎么样生成的?能够使得量产中序列号标签、固件序列号一致?

使用特权

评论回复
沙发
chuxh| | 2021-6-9 21:46 | 只看该作者
可以在flash的末尾写入地址。或者你通过芯片的UID,跟你后台的ID配对。

使用特权

评论回复
板凳
liuzaiy| | 2021-6-9 21:51 | 只看该作者
都是 生产最后一道工序就是写和贴系列号吧

使用特权

评论回复
地板
spark周| | 2021-6-9 21:55 | 只看该作者
读芯片UID号

使用特权

评论回复
5
xxrs| | 2021-6-9 21:57 | 只看该作者
有的烧写软件可以在HEX固定几个字节累加变化,烧一次自动加个一

使用特权

评论回复
6
午夜粪车| | 2021-6-9 22:00 | 只看该作者
字节写个小软件测试完成后在产品的FLASH里写序列号

使用特权

评论回复
7
liliang9554| | 2021-6-9 22:02 | 只看该作者
建一个数据库,把芯片ID号和其它信息关联起来。

使用特权

评论回复
8
jiajs| | 2021-6-9 22:04 | 只看该作者
自己产品的序列号最好单独定义呗

使用特权

评论回复
9
xxmmi| | 2021-6-9 22:06 | 只看该作者
在下载固件前使用软件编辑固件对应的地址数据(序列号)再下载固件,这种适用于固定序号,比如你就想让它是1、2、3

使用特权

评论回复
10
kangzj| | 2021-6-9 22:16 | 只看该作者
使用UID,可以直接使用UID或者使用算法通过UID生成你想要的序列号,这种序列号一部分是随机的因为和芯片的UID有关,可以在刷固件时直接读取打印,或者刷好固件后通过调用串口命令打印

使用特权

评论回复
11
zhanghqi| | 2021-6-9 22:21 | 只看该作者
刷好固件好使用串口命令写序列号,在代码里设计通过串口接收并保存序号的逻辑,首次运行时接收串口发来的序号并保存在FLASH中,这种方法实现的序列号和方法1一样,可随意定制

使用特权

评论回复
12
jlyuan| | 2021-6-9 22:28 | 只看该作者
如果有UID的单片机就读UID,没有的可以用像滚码这样的功能。要读出来可以写个小通信功能。

使用特权

评论回复
13
bqyj| | 2021-6-9 22:30 | 只看该作者
如果想写入已经编好的产品序列号,可以在FLASH划分一段存储区域,专门存储产品信息等内容,在产品完成后对该区域进行单独烧写即可。需要满足的条件:
1、与上位机通信,可以通过UART/CAN等方式。
2、定好通信协议。
3、上位机与下位机按照通信协议进行相关软件设计。
     跟设计BOOTLOADER类似。

使用特权

评论回复
14
juventus9554| | 2021-6-9 22:33 | 只看该作者
直接读取CPU的唯一ID吧!

使用特权

评论回复
15
happy_10|  楼主 | 2021-6-9 22:36 | 只看该作者
多谢大家讨论这么多哈,呵呵

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

744

主题

7973

帖子

6

粉丝