ULP-EEPROM 写入流程

一、前言

        本文主要讲解了钥匙(NCF29A1)在 IMMO 功能实现之后,通过低频板(PJF7992)往 NCF29A1 的 ULP-EEPROM 写入数据的具体流程,通过这种方式可以直接更改 NCF29A1 的相关配置,不需要再对 NCF29A1 进行重新烧录,方便量产后,对产品进行优化和升级。

二、概述

        IMMO 功能实现[1]之后,NCF29A1 处于 AUTHORIZED 状态,在往 ULP-EEPROM 写入数据之前,需要先进入 XMA_CFG 状态,配置所要访问 Segment 里面 Block 的数量【说明:每个 Segment 最多可包含 8 个 Block】,再进行相应的写入操作,图1.1 是应答器(NCF29A1)的状态图。

图 1.1 应答器的状态图

三、具体流程

        下面是配置 Segment0 包含 Block0~Block3,并在 Block2 Page0写入数据 0x66,0x66,0x66,0x66 的具体流程:

        1. 进入 Wait State:发送 11101(XMA_CFG) 两次,第一次使设备进入 Wait 状态【说明:参见图 1.1,若在 AUTHORIZED 发送不被允许的命令,NCF29A1 就会进入 Wait 状态】,回应:XMA_CFG EQ+11101 00010,具体查看图 1.2。
图 1.2 XMA_CFG timing
        2. 配置 Segment0 里包含的 Block:发送 11000 00111(WRITE_CFG_S),写入:0000 0011(block0-block3),配置 Segment0 的大小,具体查看图 1.3。
图 1.3 WRITE_CFG_S timing

        3. 读取 Segment0 配置:READ_CFG SEG0 01000 10111,具体查看图 1.4。
图 1.4 READ_CFG timing

        4. 进入 XWA_WAIT State:发送 01000(XMA_WAIT)两次,第一次使设备进入 Wait,回应:EQ+0x03 0x03(Segment0 Mode:PLAIN、SIZE:4 个 Block),具体查看图 1.5。

图 1.5 XMA_WAIT timing

        5. 设置 Block2:发送 01010 10101(SET_BLOCK2),具体查看图 1.6。
图 1.6 SEL_BLOCK timing

        6. 读 Page0:发送 11000 00111(READ_PAGE0), 具体查看图 1.7。
图 1.7 READ_PAGE timing

        7. 向 Page0 写入数据 0x66,0x66,0x66,0x66:发送 10000 01111(WEITE_PAGE0),写入数据 32bit (0x66,0x66,0x66,0x66),具体查看图 1.8。
图 1.8 WRITE_PAGE timing

        8. 参考步骤 6,检验数据是否写入 ULP-EEPROM。

四、总结

        以上就是在 IMMO 认证成功之后,向 NCF29A1 ULP-EEPROM 写入数据的全部流程,可参考此例程对其它的 Block 进行读写访问,调试阶段建议在 ULP-EEPROM  的 Block2~Block14 里进行写入,Block 1 可能包含 NCF29A1 高频发送相关配置参数。

五、参考文献

[1] IMMO 功能的实现 - 大大通 (wpgdadatong.com)

[2] ds489211 - Product Data Sheet - HT3-Family_Transponder - MRK III (1.1).pdf

★博文内容均由个人提供,与平台无关,如有违法或侵权,请与网站管理员联系。

★文明上网,请理性发言。内容一周内被举报5次,发文人进小黑屋喔~

评论