【N32L43x评测】5、获取MCU96位UID、128位UCID
[复制链接]
1、前言
一般的mcu只有96位UID,N32L43x不仅仅包含96位UID,而且包含128位UCID,本文读取测试。
2、UCID与UID
96位UID信息,起始地址为0x1FFFF7F0;
128位UCID信息,起始地址为0x1FFFF7C0;
设备出厂的时候,已经固化在mcu内部的,用户不可更改。
3、程序读取
#define UCID 0x1FFFF7C0
#define UID 0x1FFFF7F0
struct McuInfo_t
{
uint8_t UniqueCustomerId[16];
uint8_t UniqueDeviceId[12];
}McuInfo;
void GetMcuInfo(void)
{
printf("Unique Customer Id:[");
for(uint8_t i=0;i<16;i++)
{
McuInfo.UniqueCustomerId[i]=*(uint8_t*)(UCID+i);
printf(" %02x",McuInfo.UniqueCustomerId[i]);
}
printf("]\r\n\r\n");
printf("Unique Device Id:[");
for(uint8_t i=0;i<12;i++)
{
McuInfo.UniqueDeviceId[i]=*(uint8_t*)(UID+i);
printf(" %02x",McuInfo.UniqueDeviceId[i]);
}
printf("]\r\n");
}
4、测试
可以看出,程序读取的和调试器调试读取的一致。
|