0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

关于RX MCU如何读取Unique ID

jf_pJlTbmA9 来源:瑞萨MCU小百科 作者:瑞萨MCU小百科 2023-10-31 17:15 次阅读

对于物联网的应用或者产品版本管理等场合,芯片信息读取是用户非常关心的问题。本文介绍了瑞萨RX家族单片机读取Unique ID的方法。

对于RX族MCU来讲,读取Unique ID分为以下两种方式:

wKgZomUD43SAaWOpAAERYFlKkYw384.jpg

注:由于Unique ID存储在闪存的非编址区域中,用户无法改写,所以需要使用Unique ID读取命令读取寄存器值来获取。

1、RX110、RX111、RX113、RX130、RX13T:使用使用Firmware IntegrationTechnology(FIT)的Unique ID读取(UID)模块来获得MCU的Unique ID。

UID模块能够读取存储在非编址区域中的32字节Unique ID,并将其存储在指定区域中。以下将该模块称为UID FIT模块。具体可以扫描下方二维码查看参考应用笔记(需要登录后查看):

https://www2.renesas.cn/jp/zh/oauth2/default/v1/authorize?client_id=0oa2ixjskq8o2hdJB357 response_type=code scope=openid%20email%20phone%20profile%20MyRenesasUserInfo redirect_uri=https%3A//www2.renesas.cn/openid-connect/renesas-okta state=GT4jM6d9Q-UuNCLokJdUeayOpaGTqYTCHQ6VOBpzjEY

UID FIT模块利用闪存的自编程功能从非编址区域读取Unique ID。定序器首先进入ROMP/E模式,由于在该模式下无法读取ROM中的值,因此程序将会被传送到RAM并在RAM中执行。读取Unique ID后,程序会再次返回到ROM中继续执行程序。

在工程中UID FIT模块可以通过API函数的调用来实现。

读取唯一ID的步骤如下:

● 调用R_UID_Open()函数。

将程序从ROM转移到RAM。

● 调用R_UID_Read()函数。

跳转到RAM。

进入P/E模式(该模式下无法读取ROM)。

执行Unique ID读取命令。

返回读取模式(该模式下可以读取ROM)。

通过跳转返回到ROM。

UID FIT模块的处理示例如下所示:

wKgaomUD43eAHEWXAACrn5OIe6A019.png

注意,该模块有以下限制:

ROM或E2 DataFlash中的区域不能指定为存储读取的Unique ID的区域。

RX130的Unique ID读出结果参考如下:

UIDR0: 0x32UIDR8: 0xff UIDR16: 0x1cUIDR24: 0xff

UIDR1: 0x23UIDR8: 0xffUIDR17: 0x0eUIDR25: 0xff

UIDR2: 0x7aUIDR10: 0xffUIDR18: 0x19UIDR26: 0xff

UIDR3: 0xf3UIDR11: 0xffUIDR19: 0xffUIDR27: 0xff

UIDR4: 0xffUIDR12: 0xffUIDR20: 0xffUIDR28: 0xff

UIDR5: 0xffUIDR13: 0xffUIDR21: 0xffUIDR29: 0xff

UIDR6: 0xffUIDR14: 0xffUIDR22: 0xffUIDR30: 0xff

UIDR7: 0xffUIDR15: 0xffUIDR23: 0xffUIDR31: 0xff

2、除RX110、RX111、RX113、RX130、RX13T以外的RX MCU:通过寄存器UIDR0、UIDR1、UIDR2和UIDR3可以获取MCU的唯一ID。

因iodefine.h中的定义不同,对于RX65N、RX24T、RX231等,请使用以下代码:

unsigned long id[4] = {0, 0, 0, 0};

id[0] = FLASHCONST.UIDR0;

id[1] = FLASHCONST.UIDR1;

id[2] = FLASHCONST.UIDR2;

id[3] = FLASHCONST.UIDR3;

对于RX140等,请使用以下代码:

unsigned long id[4] = {0, 0, 0, 0};

id[0] = FLASH.UIDR0;

id[1] = FLASH.UIDR1;

id[2] = FLASH.UIDR2;

id[3] = FLASH.UIDR3;

几个RX MCU的Unique ID读出结果参考如下:

RX65N(R5F565NEDDFP)

UIDR0:0x3647384e

UIDR1:0x20203830

UIDR2:0x00380001

UIDR3:0x0f041189

RX24T(R5F524TAADFP)

UIDR0:0x1b011001

UIDR1:0x31352a09

UIDR2:0x3d0006ff

UIDR3:0x574b2500

RX140(R5F51406ADFN)

UIDR0:0x1a071501

UIDR1:0x09391b0b

UIDR2:0x3a0003ff

UIDR3:0x574b1500

RX231(R5F52318ADFP)

UIDR0:0x0b031101

UIDR1:0x59061d11

UIDR2:0x0b0015ff

UIDR3:0x574b2b00

来源:瑞萨MCU小百科

审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表德赢Vwin官网 网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 芯片
    +关注

    关注

    450

    文章

    49379

    浏览量

    415861
  • mcu
    mcu
    +关注

    关注

    146

    文章

    16549

    浏览量

    346871
  • 物联网
    +关注

    关注

    2893

    文章

    42968

    浏览量

    364725
收藏 人收藏

    评论

    相关推荐

    ADXL345读取id失败的原因?

    我使用 mcu 读取ADXL345 ID大部分时候可以正常 读取到0XE5,有些时候只能读到00,下面附上示波器波形图: 正常波形: 异常波形: 感觉貌似从4线spi 跑到了3线,但
    发表于05-27 07:23

    ADXL345读取id失败的原因?

    我使用 mcu 读取ADXL345 ID大部分时候可以正常 读取到0XE5,有些时候只能读到00,下面附上示波器波形图: 正常波形: 异常波形: 感觉貌似从4线spi 跑到了3线,但
    发表于05-22 08:18

    DigiKey推荐一款产品—Renesas的32位RX电机控制MCURX26T

    Renesas 的32位 RX电机控制 MCU RX26T是随着物联网技术的扩展连接客户应用与网络和传感器的理想选择,支持内置功能,有助于减少外部组件。它们的小型封装适合安装在节省空间和小型化的外壳中。
    的头像 发表于05-09 09:24 642次阅读

    请问stm8af61xx系列有没uniqueID啊, 地址是多少?

    请问stm8af61xx 系列有没 unique ID啊, 地址是多少? 芯片手册上没找到?
    发表于05-06 08:56

    H745读取唯一ID导致硬件错误是什么原因?如何解决?

    双核 MCU,使用USB时,需要调用获取芯片 ID的接口,M7正常,但是M4每次 读取都会导致硬件错误。不知道什么原因,求解
    发表于04-10 07:14

    请问STM32G0 96 BITuniqueID的地址在哪里?

    请问STM32G0 96 BIT unique ID的地址在哪里 数据手册没找到
    发表于03-12 07:50

    具备高速、高精度模拟前端的32位RXMCU

    新品发布 | RENSAS瑞萨面向高端工业传感器系统推出具备高速、高精度模拟前端的32位 RX MCU
    的头像 发表于11-28 13:15 350次阅读
    具备高速、高精度模拟前端的32位<b class='flag-5'>RX</b> <b class='flag-5'>MCU</b>

    请问蓝牙模块的RX与TX到MCU的TX与RX连接的线属于什么?

    蓝牙模块的 RX与TX到 MCU的TX与 RX连接的线属于高速信号线吗, 用特殊处理吗
    发表于11-03 06:15

    18b20的ID怎么读取

    18b20的 ID怎么 读取,我用stc15w104一个IO 读取3个温度值,怎么知道 ID
    发表于10-28 06:35

    关于RL78MCU如何读取UniqueID和Device Part Number

    关于RL78 MCU如何 读取 Unique ID和Device Part Number
    的头像 发表于10-27 15:14 784次阅读
    <b class='flag-5'>关于</b>RL78 <b class='flag-5'>MCU</b>如何<b class='flag-5'>读取</b><b class='flag-5'>Unique</b> <b class='flag-5'>ID</b>和Device Part Number

    32位高性能电机控制MCU-RX66T/RX72T产品介绍(1)

    32位高性能电机控制 MCU-RX66T/ RX72T产品介绍(1)
    的头像 发表于10-26 16:51 853次阅读
    32位高性能电机控制<b class='flag-5'>MCU-RX</b>66T/<b class='flag-5'>RX</b>72T产品介绍(1)

    单个MCU即可实现多电机控制!基于RX72T的4电机控制示例

    单个 MCU即可实现多电机控制!基于 RX72T的4电机控制示例
    的头像 发表于10-25 15:38 528次阅读
    单个<b class='flag-5'>MCU</b>即可实现多电机控制!基于<b class='flag-5'>RX</b>72T的4电机控制示例

    怎么用STLINK读取MCU的设备ID

    怎么用STlink 读取 MCU的设备 ID
    发表于10-12 08:29

    关于RAMCU如何读取UniqueID和Device Part Number

    关于RA MCU如何 读取 Unique ID和Device Part Number
    的头像 发表于09-28 16:09 655次阅读
    <b class='flag-5'>关于</b>RA <b class='flag-5'>MCU</b>如何<b class='flag-5'>读取</b><b class='flag-5'>Unique</b> <b class='flag-5'>ID</b>和Device Part Number

    32位高性能电机控制MCU-RX66T/RX72T产品介绍

    32位高性能电机控制 MCU-RX66T/ RX72T产品介绍(2)
    的头像 发表于09-18 16:41 1493次阅读
    32位高性能电机控制<b class='flag-5'>MCU-RX</b>66T/<b class='flag-5'>RX</b>72T产品介绍