我正在开发一个嵌入式USB项目的固件。我想要使用的生产编程器会在指定的内存地址自动将序列号写入设备闪存中。编程器将序列号以十六进制数字的形式存储在指定数量的字节中。例如,如果我告诉它将序列号123456存储在地址0x3C00,我的内存将如下所示:
0x3C00 - 00
0x3C01 - 01
0x3C02 - E2
0x3C03 - 40
//(123456 in Hex = 1E240)
问题在于,当我的主机应用程序从设备中读取序列号时,它需要一个Unicode字符数组。因此,我的序列号应该是…
{ '1','0',
'2','0',
'3','0',
'4','0',
'5','0',
'6','0'}
当
因此,在我的固件中,我正在用C语言编写,是否有可能从flash中检索十六进制序列号,将其编码为unicode字符数组并将其存储在Ram变量中?
ushort [] serial = { '1', '2', '3', '4', '5', '6'}
。 - user180326