STM32L4xx_HAL_Driver  1.14.0
stm32l4xx_hal_nand.h File Reference

Header file of NAND HAL module. More...

Go to the source code of this file.

Data Structures

struct  NAND_IDTypeDef
 NAND Memory electronic signature Structure definition. More...
 
struct  NAND_AddressTypeDef
 NAND Memory address Structure definition. More...
 
struct  NAND_DeviceConfigTypeDef
 NAND Memory info Structure definition. More...
 
struct  NAND_HandleTypeDef
 NAND handle Structure definition. More...
 

Functions

HAL_StatusTypeDef HAL_NAND_Init (NAND_HandleTypeDef *hnand, FMC_NAND_PCC_TimingTypeDef *ComSpace_Timing, FMC_NAND_PCC_TimingTypeDef *AttSpace_Timing)
 Perform NAND memory Initialization sequence. More...
 
HAL_StatusTypeDef HAL_NAND_DeInit (NAND_HandleTypeDef *hnand)
 Perform NAND memory De-Initialization sequence. More...
 
HAL_StatusTypeDef HAL_NAND_ConfigDevice (NAND_HandleTypeDef *hnand, NAND_DeviceConfigTypeDef *pDeviceConfig)
 Configure the device: Enter the physical parameters of the device. More...
 
HAL_StatusTypeDef HAL_NAND_Read_ID (NAND_HandleTypeDef *hnand, NAND_IDTypeDef *pNAND_ID)
 Read the NAND memory electronic signature. More...
 
void HAL_NAND_MspInit (NAND_HandleTypeDef *hnand)
 Initialize the NAND MSP. More...
 
void HAL_NAND_MspDeInit (NAND_HandleTypeDef *hnand)
 DeInitialize the NAND MSP. More...
 
void HAL_NAND_IRQHandler (NAND_HandleTypeDef *hnand)
 This function handles NAND device interrupt request. More...
 
void HAL_NAND_ITCallback (NAND_HandleTypeDef *hnand)
 NAND interrupt feature callback. More...
 
HAL_StatusTypeDef HAL_NAND_Reset (NAND_HandleTypeDef *hnand)
 NAND memory reset. More...
 
HAL_StatusTypeDef HAL_NAND_Read_Page_8b (NAND_HandleTypeDef *hnand, NAND_AddressTypeDef *pAddress, uint8_t *pBuffer, uint32_t NumPageToRead)
 Read Page(s) from NAND memory block (8-bits addressing) More...
 
HAL_StatusTypeDef HAL_NAND_Write_Page_8b (NAND_HandleTypeDef *hnand, NAND_AddressTypeDef *pAddress, uint8_t *pBuffer, uint32_t NumPageToWrite)
 Write Page(s) to NAND memory block (8-bits addressing) More...
 
HAL_StatusTypeDef HAL_NAND_Read_SpareArea_8b (NAND_HandleTypeDef *hnand, NAND_AddressTypeDef *pAddress, uint8_t *pBuffer, uint32_t NumSpareAreaToRead)
 Read Spare area(s) from NAND memory (8-bits addressing) More...
 
HAL_StatusTypeDef HAL_NAND_Write_SpareArea_8b (NAND_HandleTypeDef *hnand, NAND_AddressTypeDef *pAddress, uint8_t *pBuffer, uint32_t NumSpareAreaTowrite)
 Write Spare area(s) to NAND memory (8-bits addressing) More...
 
HAL_StatusTypeDef HAL_NAND_Read_Page_16b (NAND_HandleTypeDef *hnand, NAND_AddressTypeDef *pAddress, uint16_t *pBuffer, uint32_t NumPageToRead)
 Read Page(s) from NAND memory block (16-bits addressing) More...
 
HAL_StatusTypeDef HAL_NAND_Write_Page_16b (NAND_HandleTypeDef *hnand, NAND_AddressTypeDef *pAddress, uint16_t *pBuffer, uint32_t NumPageToWrite)
 Write Page(s) to NAND memory block (16-bits addressing) More...
 
HAL_StatusTypeDef HAL_NAND_Read_SpareArea_16b (NAND_HandleTypeDef *hnand, NAND_AddressTypeDef *pAddress, uint16_t *pBuffer, uint32_t NumSpareAreaToRead)
 Read Spare area(s) from NAND memory (16-bits addressing) More...
 
HAL_StatusTypeDef HAL_NAND_Write_SpareArea_16b (NAND_HandleTypeDef *hnand, NAND_AddressTypeDef *pAddress, uint16_t *pBuffer, uint32_t NumSpareAreaTowrite)
 Write Spare area(s) to NAND memory (16-bits addressing) More...
 
HAL_StatusTypeDef HAL_NAND_Erase_Block (NAND_HandleTypeDef *hnand, NAND_AddressTypeDef *pAddress)
 NAND memory Block erase. More...
 
uint32_t HAL_NAND_Address_Inc (NAND_HandleTypeDef *hnand, NAND_AddressTypeDef *pAddress)
 Increment the NAND memory address. More...
 
HAL_StatusTypeDef HAL_NAND_ECC_Enable (NAND_HandleTypeDef *hnand)
 Enable dynamically NAND ECC feature. More...
 
HAL_StatusTypeDef HAL_NAND_ECC_Disable (NAND_HandleTypeDef *hnand)
 Disable dynamically NAND ECC feature. More...
 
HAL_StatusTypeDef HAL_NAND_GetECC (NAND_HandleTypeDef *hnand, uint32_t *ECCval, uint32_t Timeout)
 Get NAND ECC value. More...
 
HAL_NAND_StateTypeDef HAL_NAND_GetState (NAND_HandleTypeDef *hnand)
 Return the NAND state. More...
 
uint32_t HAL_NAND_Read_Status (NAND_HandleTypeDef *hnand)
 NAND memory read status. More...
 

Variables

 C
 

Detailed Description

Header file of NAND HAL module.

Author
MCD Application Team
Attention

© Copyright (c) 2017 STMicroelectronics. All rights reserved.

This software component is licensed by ST under BSD 3-Clause license, the "License"; You may not use this file except in compliance with the License. You may obtain a copy of the License at: opensource.org/licenses/BSD-3-Clause

Definition in file stm32l4xx_hal_nand.h.


Data Structure Documentation

◆ NAND_IDTypeDef

struct NAND_IDTypeDef

NAND Memory electronic signature Structure definition.

Definition at line 61 of file stm32l4xx_hal_nand.h.

Data Fields
uint8_t Device_Id
uint8_t Fourth_Id
uint8_t Maker_Id
uint8_t Third_Id

◆ NAND_AddressTypeDef

struct NAND_AddressTypeDef

NAND Memory address Structure definition.

Definition at line 76 of file stm32l4xx_hal_nand.h.

Data Fields
uint16_t Block

NAND memory Block address

uint16_t Page

NAND memory Page address

uint16_t Plane

NAND memory Zone address

◆ NAND_DeviceConfigTypeDef

struct NAND_DeviceConfigTypeDef

NAND Memory info Structure definition.

Definition at line 88 of file stm32l4xx_hal_nand.h.

Data Fields
uint32_t BlockNbr

NAND memory number of total blocks

uint32_t BlockSize

NAND memory block size measured in number of pages

FunctionalState 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

uint32_t PageSize

NAND memory page (without spare area) size measured in bytes for 8 bits adressing or words for 16 bits addressing

uint32_t PlaneNbr

NAND memory number of planes

uint32_t PlaneSize

NAND memory zone size measured in number of blocks

uint32_t SpareAreaSize

NAND memory spare area size measured in bytes for 8 bits adressing or words for 16 bits addressing

◆ NAND_HandleTypeDef

struct NAND_HandleTypeDef

NAND handle Structure definition.

Definition at line 115 of file stm32l4xx_hal_nand.h.

Data Fields
NAND_DeviceConfigTypeDef Config

NAND phusical characteristic information structure

FMC_NAND_InitTypeDef Init

NAND device control configuration parameters

FMC_NAND_TypeDef * Instance

Register base address

HAL_LockTypeDef Lock

NAND locking object

__IO HAL_NAND_StateTypeDef State

NAND device access state

Variable Documentation

◆ C

C
Initial value:
{
#endif
#if defined(FMC_BANK3)
typedef enum
{
HAL_NAND_STATE_RESET = 0x00U,
HAL_NAND_STATE_READY = 0x01U,
HAL_NAND_STATE_BUSY = 0x02U,
HAL_NAND_STATE_ERROR = 0x03U
}HAL_NAND_StateTypeDef
Header file of FMC HAL module.