uint32_t NAND_DeviceConfigTypeDef::BlockSize
NAND memory block size measured in number of pages
uint32_t NAND_DeviceConfigTypeDef::BlockNbr
NAND memory number of total blocks
uint32_t NAND_DeviceConfigTypeDef::PlaneNbr
NAND memory number of planes
uint32_t NAND_DeviceConfigTypeDef::PlaneSize
NAND memory zone size measured in number of blocks
FunctionalState NAND_DeviceConfigTypeDef::ExtraCommandEnable
NAND extra command needed for Page reading mode. This parameter is mandatory
for some NAND parts after the read command (NAND_CMD_AREA_TRUE1) and
before DATA reading sequence. Example: Toshiba THTH58BYG3S0HBAI6. This
parameter could be ENABLE or DISABLE Please check the Read Mode sequnece in
the NAND device datasheet
29.1.4 NAND_HandleTypeDef
Data Fields
FSMC_NAND_TypeDef * Instance
FSMC_NAND_InitTypeDef Init
HAL_LockTypeDef Lock
__IO HAL_NAND_StateTypeDef State
NAND_DeviceConfigTypeDef Config
Field Documentation
FSMC_NAND_TypeDef* NAND_HandleTypeDef::Instance
Register base address
FSMC_NAND_InitTypeDef NAND_HandleTypeDef::Init
NAND device control configuration parameters
HAL_LockTypeDef NAND_HandleTypeDef::Lock
NAND locking object
__IO HAL_NAND_StateTypeDef NAND_HandleTypeDef::State
NAND device access state
NAND_DeviceConfigTypeDef NAND_HandleTypeDef::Config
NAND phusical characteristic information structure
29.2 NAND Firmware driver API description
29.2.1 How to use this driver
This driver is a generic layered driver which contains a set of APIs used to control NAND
flash memories. It uses the FSMC layer functions to interface with NAND devices. This
driver is used as follows:
NAND flash memory configuration sequence using the function HAL_NAND_Init() with
control and timing parameters for both common and attribute spaces.
Read NAND flash memory maker and device IDs using the function
HAL_NAND_Read_ID(). The read information is stored in the NAND_ID_TypeDef
structure declared by the function caller.
Access NAND flash memory by read/write operations using the functions
HAL_NAND_Read_Page_8b()/HAL_NAND_Read_SpareArea_8b(),
HAL_NAND_Write_Page_8b()/HAL_NAND_Write_SpareArea_8b(),
HAL_NAND_Read_Page_16b()/HAL_NAND_Read_SpareArea_16b(),
HAL_NAND_Write_Page_16b()/HAL_NAND_Write_SpareArea_16b() to read/write
page(s)/spare area(s). These functions use specific device information (Block, page