从设备唯一读取更多字段唯一ID?..

了解更多常见问题解答教程

2个帖子/ 0新
最后一篇
AlexSunny123
离线
最后一次露面:2个月2周前
加入:2020-11-17 12:37
从设备唯一读取更多字段唯一ID?..

您好,

除了MAC地址(广播地址)之外,我还希望将8字节的唯一ID分配给我刻录的每个OTP。
在智能片段下,在OTP标题下,有许多称为“设备唯一ID”的字段,其中前两个用于6个字节的广播地址。

如何在程序中读取这些字段?
在NVDS.C中,我找到了读取OTP广播地址的代码。

void nvds_read_bdaddr_from_otp()
{
#ifdef bdaddr_from_otp.

#ifndef app_boot_from_otp.
... //无关代码 - 在我的编译中定义了App_boot_from_otp。
#其他
UINT8_T * OTP_BDADDR =(UINT8_T *)0x20000000 + BDADDR_FROM_OTP;//在OTP标题中是BDAddr
#万一

Memcpy(&dev_bdaddr,otp_bdaddr,sizeof(dev_bdaddr));
setbits16(clk_amba_reg,otp_enable,0);//禁用OTP时钟
#ifdef support_1_8_v.
setBits16(DCDC_CTRL2_REG,DCDC_VBAT3V_LEV,0x0);/// - 支持1.8V启动
#万一

#万一
}

我可以制作一个简单的8字节静态阵列,并在上面的Memcpy下面添加以下行:

memcpy(my_unique_id,(otp_bdaddr + 8),8);

这是正确的方法吗?
是否有一个不同的位置,我应该用来存储我自己的自定义用法的标识符(支持未来的堆栈等)?
我还在0x47F54看到了名为客户特定字段的字段。

谢谢

Alexsunny

设备:
PM_DIALOG.
离线
最后一次露面:1天7小时前
员工
加入:2018-02-08 11:03
嗨AlexSunny123,

嗨AlexSunny123,

谢谢你的问题在线。因此,如果我理解正确,您希望完成的是在OPT中添加其他唯一ID,期望设备BD地址?nvds_read_bdaddr_from_otp将尝试从OTP(0x7fd4)中获取地址并将地址值复制到“dev_bdaddr”。

谢谢,PM_DIALOG.