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 Integration Technology(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。定序器首先进入ROM P/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小百科

审核编辑:汤梓红

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

    关注

    462

    文章

    53534

    浏览量

    459049
  • mcu
    mcu
    +关注

    关注

    147

    文章

    18605

    浏览量

    386954
  • 物联网
    +关注

    关注

    2939

    文章

    47317

    浏览量

    407811
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    MCU(UART)串口的RX和TX如何使其反相输出?

    MCU(UART):串口的RX和TX如何使其反相输出?
    发表于 11-14 06:10

    LuatOS MCU核心库全接触:新手操作与功能测试攻略!

     MCU芯片级开发新手如何快速掌握核心技能?本文围绕LuatOS的MCU核心库,系统演示时钟频率获取、唯一ID读取、高精度计时、IO复用配置等核心功能测试,并通过丰富示例,帮助开发者轻
    的头像 发表于 11-12 14:30 138次阅读
    LuatOS <b class='flag-5'>MCU</b>核心库全接触:新手操作与功能测试攻略!

    新手必备:LuatOS MCU核心库功能测试与实践指南

    新手如何快速掌握MCU芯片级开发?本文通过LuatOS的MCU核心库,全面演示时钟频率获取、唯一ID读取、高精度计时、IO复用配置等核心功能的测试流程,并提供实用示例,帮助开发者高效入
    的头像 发表于 11-12 14:26 149次阅读
    新手必备:LuatOS <b class='flag-5'>MCU</b>核心库功能测试与实践指南

    如何使用瑞萨RX26T MCU中的POE功能模块

    瑞萨RX26T芯片是专门为#电机控制 设计的32位MCU,搭载120MHz的CPURXv3内核,具备强大的数字信号处理能力和丰富的外设资源。
    的头像 发表于 08-13 09:19 5346次阅读
    如何使用瑞萨<b class='flag-5'>RX</b>26T <b class='flag-5'>MCU</b>中的POE功能模块

    #工作原理大揭秘 #单片机 #电路原理 #MCU#mcu程序开发

    mcu
    宇凡微电子
    发布于 :2025年06月19日 19:02:28

    RX140 MCU的快速原型板 数据手册和设计资料

    Renesas RTK5FP1400S00001BE用于RX140 MCU的快速原型设计板设有板载RX140 MCU (R5F51406BGFN)。该板经济划算,适用于各种应用的
    的头像 发表于 05-21 10:43 805次阅读
    <b class='flag-5'>RX</b>140 <b class='flag-5'>MCU</b>的快速原型板 数据手册和设计资料

    如何在VS Code中使用瑞萨RX系列MCU

    RX家族系列MCU围绕先进的CPU内核构建,汇集了瑞萨的各种技术创新。基于多年积累的专有技术,它们旨在在各个方面提供更好的响应性和能效,同时结合出色的运行性能和低功耗。为工业、家用电子、办公自动化
    的头像 发表于 04-17 17:58 3523次阅读
    如何在VS Code中使用瑞萨<b class='flag-5'>RX</b>系列<b class='flag-5'>MCU</b>

    S32G399A调用Mcu_PerformReset()接口执行功能复位,复位后使用Mcu_GetResetReason()读取不到了,为什么?

    使用Mcu_PerformReset()执行功能复位,复位后使用Mcu_GetResetReason()不能读取MCU_SW_FUNC_RESET这个复位源,而是
    发表于 04-04 07:57

    瑞萨电子RX261/RX260 32位触摸控制MCU数据表与技术手册

    瑞萨电子RX261/RX260 32位触摸控制MCU数据表与技术手册
    的头像 发表于 03-17 16:32 1137次阅读

    火语言如何循环读取表格

    描述 从MySQL读取数据(包含列名:id,name,count,create_date)输出到表格类型变量dt,用For循环读取表格每行数据,通过dt.Rows[i]['id']取表
    的头像 发表于 02-07 15:11 515次阅读
    火语言如何循环<b class='flag-5'>读取</b>表格

    【RA-Eco-RA4E2-64PIN-V1.0开发板试用】读取RA4E2单片机的128位身份证号码

    的身份证号码是绝不不一样的。 同样的,在MCU,DSP,FPGA里面,每个芯片都拥有自己独一无二的身份证号码ID,瑞萨RA4E2单片机它的专业名称叫做128-bit unique ID
    发表于 01-07 19:19

    ADS1292R读取不到ID号是怎么回事?

    可以读取到几个寄存器的值,也可以写进去,但是有的寄存器读不出来,ID号也读不到,是怎么回事?
    发表于 12-13 07:04

    Jtti:节点ID变化过于频繁如何解决

    针对节点ID变化过于频繁的问题,以下是一些解决方案和优化方法: 确保节点ID的唯一性 :在系统设计阶段为每个节点分配一个唯一的ID,并在节点加入网络时进行ID的校验和冲突检测,以确保新
    的头像 发表于 12-12 15:44 736次阅读

    hdc1080可以正常读取设备ID,但是当读取温湿度值时总是0,为什么?如何解决?

    hdc1080可以正常读取设备ID,但是当读取温湿度值时总是0,配置寄存器值配置为0x1000,是默认值,,请问该如何解决啊?
    发表于 12-12 06:04

    基于瑞萨电子RX MCU的电机控制解决方案

    本次给大家介绍基于瑞萨电子RX电机控制MCU的电机控制解决方案,RX家族32位高功效MCU包含四个产品系列:具有最优性能和最强功能的旗舰RX
    的头像 发表于 12-10 17:15 2380次阅读
    基于瑞萨电子<b class='flag-5'>RX</b> <b class='flag-5'>MCU</b>的电机控制解决方案