跳转到主要内容

7. 块模式下的外部闪存

动机

使用非存储器映射闪存(如NAND Flash)时,必须开发相关驱动程序,以便TouchGFX使用其中存储内容。

关于使用非存储器映射闪存来储存镜像部分,阅读有关该主题的更多信息。

Note
如果你的开发板不带不可寻址外部闪存,请跳过此步骤。

目标

此步的目标是创建一个驱动程序,基于它可从非映射闪存中的某个位置读取多个字节,并将其存储在数组中。

验证

本节的验证点包括:

验证点基本原理
确保闪存内容确保从闪存读取的内容正确。
验证性能确保读取性能符合MCU配置。

先决条件

  • 有关闪存的信息,通常来自数据手册。
  • 有关MCU和外部闪存之间的连接的信息。
  • 闪存速度。

执行

通常,NAND Flash通过MCU上的FMC进行配置。

请记住配置与闪存连接的GPIO。

在STM32CubeMX中配置非存储映射QSPI闪存的方法,与配置QSPI存储器映射闪存方法一样。

代码

编写代码从闪存的特定地址读取多个字节的代码。 下面提供了一个示例。 根据闪存芯片组织驱动程序。

void readNonaddressableFlash(uint32_t from, uint8_t *into, uint32_t n)
{
...
}

uint8_t bytes[1000];

//read external Flash
readNonaddressableFlash(0xab001212, bytes, 1000);

此代码将用于开发TouchGFX抽象层。