
一般情况,每个产品在生产的时候都会分配一个唯一的序列号或编号,可以但是1个字节、2个字节、4个字节等,可以存储在内部Flash、内部EEPROM、外部Flash或外部EEPROM等。产品序列号的烧写有多种方式——通过独立程序烧写、通过在hex文件中修改Flash对应的地址内容和使用工具自动递增修改(如Jlink+J_flash)等。下面详细介绍一下Jlink+J_flash的方式: 通过Jlink+J_flash的方式烧写时,程序只需要正常的读取相应地址里面的值即可,其余的不要做特别的处理,将程序生成hex文件,这种方式序列号的存储的位置支持内部Flash和EEPROM。 打开J_Flash工具,新建好一个对应自己MCU型号的工程,如我建立的工程为TestPrj.jflash,文件为TestV100.hex,ID为2字节,存储在EEPROM的0x08080000位置,序列号每次增加1,打开文件后如下如: ![]() 点击Options->Preject settings...,并在弹出的对话框中选择Production: ![]() 在Program serial number栏填写参数存储地址,地址为08080000,其实序列号为25007,长度为2,增加量为1: ![]() 参数修改完后,点击确定按钮,此时J-Flash项目所在的文件夹下会生产一个文件“TestPrj_Serial.txt”,里面存的就是上图设置的序列号。 Jlink连接上硬件并上电,点击Target->connect连接硬件: ![]() 点击Target->Auto自动编程: ![]() 操作执行完毕后,序列号写入相应的EEPROM地址并自动按照增加量增加。 |
![]() |
![]() |
这波操作可以有 |
谢谢分享 |
基于STM32的自动跟踪小车
获取STM32代码运行时间的技巧
【原创】【MCU实战经验】+ 可在产品中使用的bootloader程序...
小缓存实现大效果:X-NUCLEO-GFX01M1 和 TouchGFX 4.15让你的产品...
小缓存实现大效果:X-NUCLEO-GFX01M1 和 TouchGFX 4.15让你的产品...
单片机是控制电子产品的大脑
嵌入式产品的开发过程中的各个阶段
STM32H7新产品线,融性能、集成度和能效于一身,让你的智...
硬核!ST精工打造全新30A高结温单向可控硅(SCR)产品系列
“热门产品”智能表计芯片组,再添无线通信功能