ZHCAFK3 July   2025 AM625 , AM62P

 

  1.   1
  2.   摘要
  3.   商标
  4. 1简介
  5. 2访问 SPI NOR 闪存寄存器
    1. 2.1 修改 U-Boot 源代码,以在 U-Boot 控制台中访问 NOR 闪存寄存器
    2. 2.2 修改 MCU Plus 和 RTOS SDK 源代码,以访问 NOR 闪存寄存器
  6. 3调试 NOR 闪存的使用示例
    1. 3.1 在 U-Boot 控制台中读取和写入 NOR Flash 寄存器
    2. 3.2 在 MCU Plus SDK 中读写 NOR Flash 寄存器
  7. 4总结
  8. 5参考资料

在 U-Boot 控制台中读取和写入 NOR Flash 寄存器

首先,使用 sf probe,检测和初始化 SPI NOR 闪存:

> sf probe
SF: Detected s25hs512t with page size 256 Bytes, erase size 256 KiB,
total 64 MiB

使用 rdar 读取 NOR 闪存中的寄存器。请注意,大多数情况下,读取时只读取易失性寄存器。易失性寄存器地址为 80000xh。例如,在读取配置寄存器 4(易失性,CFR4V - 地址 800005h)时,读取易失性地址后,用户也可以获得非易失性(CFR4N - 地址 000005h)的值,在复位后,非易失性值会加载到易失性寄存器中。在 NOR 闪存中,读取易失性寄存器出厂默认需要 0 个虚拟周期。读取非易失性寄存器出厂默认需要八个虚拟周期。使用以下代码读取。

> sf rdar 000005 8
08
> sf rdar 800005 0
08

使用 wrar 进行写入,但请注意,用户必须写入非易失性寄存器,写入易失性寄存器的值在断电后会丢失。写入完成后,需要读取易失性读状态寄存器 1(STR1V - 地址 800000h)以检查“写入任意寄存器”操作的完成情况。如果写入任何寄存器操作成功完成,则该值必须为 00h。一旦非易失性存储器被恢复出厂默认设置,请使用以下代码将新值写入配置寄存器 4:

> sf wrar 000005 A8
> sf rdar 800000 0
00
> sf rdar 800005 0
A8