Edit online

编程指南

初始化流程

每次系统上电复位后,SID 自动读取所有 eFuse Cell 值到 eFuse Buffer,软件只需读取eFuse Buffer对应地址值即可。
注: 第一次烧写后, eFuse Buffer 值不会自动更新,需通过软件读操作将对应地址的值读到寄存器。

eFuse 烧写流程

  1. 检查 eFuse 控制寄存器 0x0000 EFUSE_CTL 状态位,即 EFUSE_WRITE_START/ EFUSE_READ_START/ EFUSE_AUTO_STATUS),若为非空闲则等待,若都为空闲则继续第 2 步。

  2. 配置要烧写 eFuse 地址到 eFuse 地址寄存器0x0004 EFUSE_ADDR

  3. 配置要烧写 eFuse 数据到 eFuse 写数据寄存器0x0008 EFUSE_WDATA

  4. 配置 eFuse 控制寄存器0x0000 EFUSE_CTL 启动烧写流程,EFUSE_WRITE_START 和 CODE 均需配置。

  5. 等待 EFUSE_WRITE_START 自动清零,硬件自动关闭 LDO。

为达到双备份目的,要求针对备份地址,即偏移 2Kbit地址,重复步骤 1~步骤 5 烧写

eFuse 读取流程

  1. 检查 eFuse 控制寄存器 0x0000 EFUSE_CTL 状态位,即 EFUSE_WRITE_START/ EFUSE_READ_START/ EFUSE_AUTO_STATUS),若为非空闲则等待,若都为空闲则继续第 2 步。

  2. 配置要读取 eFuse 地址到 eFuse 地址寄存器 0x0004 EFUSE_ADDR

  3. 配置 eFuse 控制寄存器 0x0000 EFUSE_CTL 启动读取流程,EFUSE_READ_START 和 EFUSE_OP_CODE 都需要配置。

  4. 等待 EFUSE_READ_START 自动清零,读取 eFuse 读数据寄存器 (EFUSE_RDATA) 获得 eFuse 的值。