找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 3914|回复: 0
打印 上一主题 下一主题
收起左侧

话说ST MCU的UID

[复制链接]
跳转到指定楼层
楼主
ID:98618 发表于 2016-6-4 17:29 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

   ST MCU芯片中的绝大部分都内置一串96位唯一标识码【unique ID】。时不时有人问起这个东西,尤其最近感,觉询问它的人甚是热闹。这里跟大家一起简单分享下。


    上面说了ST MCU芯片中的绝大部分都带UID,也就是说并非所有ST MCU芯片都带它。到底谁带谁不带,从各自芯片数据手册的首页即可确认。如果首页没有明确写明,就表示该芯片没有UID或者说即使相应地址有数据但不保证其唯一性。

    比方在STM8系列中,STM8S0XX、STM8L0XX系列芯片就不带UID的。


    在STM32家族中,STM32F0系列中的STM3F030子系列、STM32F070子系列也是不带UID的【如果此处说错,遵照数据手册所言】,而STM32F042、STM32F071、STM32F031、STM32F051等是带UID的。这点也不用太花心思记它,知道去芯片数据手册首页核查就好。


    该UID对用户来讲是只读的,在一些对数据具有唯一性要求、数据加密操作等场合可以派上用场。ST MCU芯片中的这个UID 是对整串92位数据保证唯一性,如果你截取其中一部分就不保证唯一性了。


    STM32芯片UID的详细描述是在各系列的参考手册里。比方,STM32F0系列UID介绍如下。


    大致内容就是芯片WAFER的坐标信息、编号信息、产品批号信息等多个数据组合在一起的。关于UID的描述,在STM8数据手册里描述更为直观点,截图如下:


    至于对该UID数据的读取,没啥特别的。先从ST MCU参考手册中找到UID的地址信息,从相关地址中取出数据,用几条赋值语句即可完成。

 

    最后顺便提一下,不要把这个UID跟STM32芯片器件ID【DEVICE ID】混为一谈,STM32芯片往往还有DEVICE ID,该ID主要包含芯片料号信息和晶圆DIE版本等信息。它可以通过调试接口访问或被用户软件访问。当我们用STLINK UTILITY通过STLINK调试器连接STM32目标板时就可看到有关DEVICE ID的信息。

 

    下图就是使用STLINK UTILITY通过STLINK连接STM32F072目标板时看到的有关DEVICE ID的信息。

    此外,对于STM32芯片,除了上面提到的UID,DEVICE ID外,还有其它基于内部调试组件的JTAG ID,有兴趣的话可以自行继续了解。


往期话题l链接:

1、一个与System Bootloader相关的话题

2关于STM32Cube的几个常见问题

3、STM32CUBE相关技术手册哪里找

4、STM32中国峰会上展示了哪些成品?

5、一个关于STM32 CAN出错恢复的话题

6、STM32开发所需的基本资料与开发工具

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表