[应用相关]

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

[复制链接]
1082|14
手机看帖
扫描二维码
随时随地手机跟帖
happy_10|  楼主 | 2019-8-3 16:26 | 显示全部楼层 |阅读模式
想请教各位大神一个关于产品序列号的问题~
我们想给产品设置序列号,让产品联网后,后台能自动读出序列号。而且我们需要实现序列号标签(贴在机身和包装上),固件序列号一致。但是在开发过程发现,产品量产烧录的固件都是一样的,求各位大神指教一下产品固件的序列号是如何实现的?序列号通常是怎么样生成的?能够使得量产中序列号标签、固件序列号一致?

使用特权

评论回复
houcs| | 2019-8-3 16:29 | 显示全部楼层
可以在flash的末尾写入地址。或者你通过芯片的UID,跟你后台的ID配对。

使用特权

评论回复
liuzaiy| | 2019-8-3 16:32 | 显示全部楼层
都是 生产最后一道工序就是写和贴系列号吧

使用特权

评论回复
spark周| | 2019-8-3 16:35 | 显示全部楼层

读芯片UID号

使用特权

评论回复
pangb| | 2019-8-3 16:39 | 显示全部楼层
有的烧写软件可以在HEX固定几个字节累加变化,烧一次自动加个一

使用特权

评论回复
午夜粪车| | 2019-8-3 16:45 | 显示全部楼层
字节写个小软件测试完成后在产品的FLASH里写序列号

使用特权

评论回复
morrisk| | 2019-8-3 16:48 | 显示全部楼层
建一个数据库,把芯片ID号和其它信息关联起来。

使用特权

评论回复
zyf部长| | 2019-8-3 16:50 | 显示全部楼层
自己产品的序列号最好单独定义呗

使用特权

评论回复
xxmmi| | 2019-8-3 16:53 | 显示全部楼层
在下载固件前使用软件编辑固件对应的地址数据(序列号)再下载固件,这种适用于固定序号,比如你就想让它是1、2、3

使用特权

评论回复
kangzj| | 2019-8-3 16:56 | 显示全部楼层
使用UID,可以直接使用UID或者使用算法通过UID生成你想要的序列号,这种序列号一部分是随机的因为和芯片的UID有关,可以在刷固件时直接读取打印,或者刷好固件后通过调用串口命令打印

使用特权

评论回复
gongche| | 2019-8-3 17:10 | 显示全部楼层
刷好固件好使用串口命令写序列号,在代码里设计通过串口接收并保存序号的逻辑,首次运行时接收串口发来的序号并保存在FLASH中,这种方法实现的序列号和方法1一样,可随意定制

使用特权

评论回复
huwr| | 2019-8-3 17:14 | 显示全部楼层
如果有UID的单片机就读UID,没有的可以用像滚码这样的功能。要读出来可以写个小通信功能。

使用特权

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

使用特权

评论回复
happy_10|  楼主 | 2019-8-3 17:21 | 显示全部楼层

结贴了,多谢大家讨论这么多哈,呵呵

使用特权

评论回复
goodluck09876| | 2019-8-5 08:50 | 显示全部楼层
直接读取CPU的唯一ID吧!

使用特权

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

本版积分规则

744

主题

7973

帖子

6

粉丝