wwwwwbbbbb 发表于 2023-2-15 15:06:04

FM33LE025 UID 读取问题

本帖最后由 wwwwwbbbbb 于 2023-2-15 15:10 编辑

项目开发时需要读取芯片UID,读取时遇到一些问题。
读取方式参考论坛帖子:【新提醒】FM33A0/G0/L0/LC0/A0EV/LG0 系列单片机唯一码 UID 存放地址 - FM33A0xx讨论区 - 低功耗嵌入式软件开发者论坛 - Powered by Discuz! (fmdevelopers.com.cn)
读取到的结果为全0。
INFO: APP Version: V0.1.0.230202.
INFO: Compile Time: Feb 15 2023 14:42:03.
DEBUG: uid - (16 bytes):
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
相关的代码如下:
#define DEV_UID_LEN 16
#define LE0_UID_LENDEV_UID_LEN
#define LE0_UID_ADDR ( ( ( uint8_t* ) ( 0x1FFFFA10 ) ) )

/**
* @brief 获取芯片UID
*/
void get_dev_uid( uint8_t* uid )
{
    memcpy( uid, LE0_UID_ADDR, LE0_UID_LEN );
    HL_TRACE_ARRAY( "DEBUG: uid", uid, LE0_UID_LEN );
}

麻烦官方的同事帮忙排查下问题,谢啦。


另外对于手册上UID的相关描述也有存在疑惑的地方。
说明书版本为V1.7最新版
具体问题如下:
1. 手册中描述UID为128bits,但访问地址范围只有12字节(96bits)。两者矛盾。
36.2 器件 UID
FM33LE0系列每颗MCU的器件UID都是全球唯一的,由原厂写入,出厂后不可改写。
UID共128 bits,保存在Flash特殊扇区,软件运行时可以读取此UID,用于实现代码保护或安全启动
类应用。
UID访问地址是0x1FFFFA10~0x1FFFFA1B
2. 麻烦确认说明书版本是否正确。
说明书版本为V1.7,但版本列表中的版本号为1.8




wwwwwbbbbb 发表于 2023-2-15 15:18:31

1.7 2022.11    增加 MSL 等级、焊接说明、热阻系数 1.8 2022.121 增加 LQFP44 LQFP32 封装2 修正 UID 地址3 增加推荐供电方

顾博文 发表于 2023-2-17 09:18:12

读出全0的原因,可能是你拿到的是早期工程测试样片,或者早期demo板,是给用户早期测试开发用的。芯片没有经过成品测试。
可以问代理商拿成品芯片再试试。 长度是12就可以了,前12字节已经唯一了,不需要16字节。帖子已更新

顾博文 发表于 2023-2-17 09:24:03

wwwwwbbbbb 发表于 2023-2-15 15:18
1.7 2022.11    增加 MSL 等级、焊接说明、热阻系数 1.8 2022.121 增加 LQFP44 LQFP32 封装2 修正 UID 地址 ...

名字错了,手册内容已经是1.8版本了
页: [1]
查看完整版本: FM33LE025 UID 读取问题