亲爱的对话,
我正在尝试在命令行模式下使用SmartSnippets来编程OTP标题进行批量生产。我在生成OTP头文件时有一些问题。
1.我可以获得模板OTP头文件,只能修改每个板的MAC地址和XTAL修剪值(选项a)吗?或者我必须从每个芯片上读取OTP内容,然后修改MAC地址和XTAL TRIM值(选项B)?一旦从芯片读取,我们就可以看到OTP标题中的大量字段。这些字段是每个芯片(批量)都是独一无二的字段还是它们都是一样的?如果它们是唯一的,那么我们必须读取然后修改(选项b),但否则我们只能复制和修改模板头文件(选项a)。
2.我注意到,在SmartSnippets GUI模式下,您可以以十六进制格式和BIN格式导出OTP标题。我认为十六进制格式更好,因为它有支持完整性检查的票据。要自动生成标题文件,这意味着我们必须为每个MAC地址/修剪XTal值更新十六进制文件中的CRC。我认为.hex格式是标准的英特尔十六进制格式吗?如果没有,您是否有一些描述CRC如何生成?
谢谢你的帮助。
Uta_lc.
设备:
与上述问题2有关:
对于使用GUI导出的以下十六进制文件,什么是第一个和最后一行?你能解开吗?
也适用于“:047F10000000006D”:
:047F10应该是地址
0000000000为什么5个字节数据?
6D应该是票据和
C:\用户\ BLETEST> CAT固件\ READ_OTP_HEADER.HEX
:020000040004F6
:047F000000000000007D
:047F04000000000079
:047F08000035688850
:047F0C00000066C04B.
:047F1000000000006D
:047F14000000000069.
:047F18000000000065
:047F1C000000000061
:047F200000000000005d
:047F24000000000059.
:047F28000000000055.
:047F2C000000000051.
:047F3000000000004D
:047F34000000000049
:047F38000000000045
:047F3C000000000041
:047F400000000000003D
:047F4400000000000039.
:047F48000000000035
:047F4C000000000031
:047F500000000000002D
:047F5400000000000029
:047F58000000000025
:047F5C000000000021
:047F600000000000001d
:047F64000AF37D7E21.
:047F6800000200AB68
:047F6C000000000011.
:047F700055555555B9
:047F7400000000000009.
:047F7800A5A5002D8E
:047F7C000742620F47
:047F80000000000000FD
:047F840000002A745B.
:047F880000000007ee
:047F8C00000000F1
:047F900000000001EC.
:047F940000000000E9
:047F980000000000E5
:047F9C00000000E1
:047FA00000000000DD
:047FA40000000000D9
:047FA80000000000D5
:047FAC0000000000D1
:047FB000000000000cd.
:047FB400000000C9
:047FB80000000000C5
:047FBC00000000C1
:047FC00000000000BD
:047FC4000000B9
:047FC800000000B5
:047FCC00000000B1
:047FD0000000000000AD.
:047FD400000000A9
:047FD800000000A5
:047FDC00000000A1
:047FE000000000009D
:047FE400000000009.
:047FE8000000000095
:047FEC0000000091.
:047FF000000000008D
:047FF4000000000089
:047FF8000000000085
:047FFC000000000081
:00000001FF
嗨Uta_lc,
1)我不确定我完全得到了这个问题,关于580中的OTP标题,结构是相同的,SoC从出厂获取,在特定字段上具有一些预编程值,例如RF_trim字段,时间戳场等。归档值对于每个芯片都是唯一的,并且在生产测试中通过对话进行编程。因此,不能使用相同的OTP标题来刻录所有设备,因为这些预编程值对于每个设备都不同。
2)对于您更改新的CRC校验和应应用的字段(由于您正在更改.hex文件的当前行的值),如果您不更改CRC,则该工具将指示错误。是的.hex是标准英特尔.hex格式,您可以在线工具上使用以下内容生成它http://easyonlineconverter.com/converters/checksum_converter.html.。
关于破译:
第一行:02 0000 04 0004 F6是:(起始代码),02(字节计数),0000(地址),04(记录类型,扩展线性地址标签),0004(数据,这是实际文件将从的偏移量,这是40000),F6(校验和02 00 00 04 00 04)
最后一行:00000001FF声明文件的末尾
您所看到的线条:04 7F10 00 00000000 6D为:(起始代码),04(字节计数),7F10(地址),00(数据标签),00000000(实际数据),6D(校验和04 7F 10 0000 00 00 00)
谢谢mt_dialog.
谢谢MT,这真的很有帮助。