STM32F769IDiscovery  1.00
uDANTE Audio Networking with STM32F7 DISCO board
Data Structures | Macros | Enumerations | Functions
stm32f7xx_hal_nand.h File Reference

Header file of NAND HAL module. More...

#include "stm32f7xx_ll_fmc.h"

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_InfoTypeDef
 NAND Memory info Structure definition. More...
 
struct  NAND_HandleTypeDef
 NAND handle Structure definition. More...
 

Macros

#define __HAL_NAND_RESET_HANDLE_STATE(__HANDLE__)   ((__HANDLE__)->State = HAL_NAND_STATE_RESET)
 Reset NAND handle state. More...
 
#define NAND_DEVICE   ((uint32_t)0x80000000U)
 
#define NAND_WRITE_TIMEOUT   ((uint32_t)0x01000000U)
 
#define CMD_AREA   ((uint32_t)(1<<16)) /* A16 = CLE high */
 
#define ADDR_AREA   ((uint32_t)(1<<17)) /* A17 = ALE high */
 
#define NAND_CMD_AREA_A   ((uint8_t)0x00U)
 
#define NAND_CMD_AREA_B   ((uint8_t)0x01U)
 
#define NAND_CMD_AREA_C   ((uint8_t)0x50U)
 
#define NAND_CMD_AREA_TRUE1   ((uint8_t)0x30U)
 
#define NAND_CMD_WRITE0   ((uint8_t)0x80U)
 
#define NAND_CMD_WRITE_TRUE1   ((uint8_t)0x10U)
 
#define NAND_CMD_ERASE0   ((uint8_t)0x60U)
 
#define NAND_CMD_ERASE1   ((uint8_t)0xD0U)
 
#define NAND_CMD_READID   ((uint8_t)0x90U)
 
#define NAND_CMD_STATUS   ((uint8_t)0x70U)
 
#define NAND_CMD_LOCK_STATUS   ((uint8_t)0x7AU)
 
#define NAND_CMD_RESET   ((uint8_t)0xFFU)
 
#define NAND_VALID_ADDRESS   ((uint32_t)0x00000100U)
 
#define NAND_INVALID_ADDRESS   ((uint32_t)0x00000200U)
 
#define NAND_TIMEOUT_ERROR   ((uint32_t)0x00000400U)
 
#define NAND_BUSY   ((uint32_t)0x00000000U)
 
#define NAND_ERROR   ((uint32_t)0x00000001U)
 
#define NAND_READY   ((uint32_t)0x00000040U)
 
#define ARRAY_ADDRESS(__ADDRESS__, __HANDLE__)
 NAND memory address computation. More...
 
#define ADDR_1ST_CYCLE(__ADDRESS__)    (uint8_t)(__ADDRESS__) /* 1st addressing cycle */
 NAND memory address cycling. More...
 
#define ADDR_2ND_CYCLE(__ADDRESS__)    (uint8_t)((__ADDRESS__) >> 8) /* 2nd addressing cycle */
 
#define ADDR_3RD_CYCLE(__ADDRESS__)    (uint8_t)((__ADDRESS__) >> 16) /* 3rd addressing cycle */
 
#define ADDR_4TH_CYCLE(__ADDRESS__)    (uint8_t)((__ADDRESS__) >> 24) /* 4th addressing cycle */
 

Enumerations

enum  HAL_NAND_StateTypeDef { HAL_NAND_STATE_RESET = 0x00U, HAL_NAND_STATE_READY = 0x01U, HAL_NAND_STATE_BUSY = 0x02U, HAL_NAND_STATE_ERROR = 0x03U }
 HAL NAND State structures definition. More...
 

Functions

HAL_StatusTypeDef HAL_NAND_Init (NAND_HandleTypeDef *hnand, FMC_NAND_PCC_TimingTypeDef *ComSpace_Timing, FMC_NAND_PCC_TimingTypeDef *AttSpace_Timing)
 
HAL_StatusTypeDef HAL_NAND_DeInit (NAND_HandleTypeDef *hnand)
 
void HAL_NAND_MspInit (NAND_HandleTypeDef *hnand)
 
void HAL_NAND_MspDeInit (NAND_HandleTypeDef *hnand)
 
void HAL_NAND_IRQHandler (NAND_HandleTypeDef *hnand)
 
void HAL_NAND_ITCallback (NAND_HandleTypeDef *hnand)
 
HAL_StatusTypeDef HAL_NAND_Read_ID (NAND_HandleTypeDef *hnand, NAND_IDTypeDef *pNAND_ID)
 
HAL_StatusTypeDef HAL_NAND_Reset (NAND_HandleTypeDef *hnand)
 
HAL_StatusTypeDef HAL_NAND_Read_Page_8b (NAND_HandleTypeDef *hnand, NAND_AddressTypeDef *pAddress, uint8_t *pBuffer, uint32_t NumPageToRead)
 
HAL_StatusTypeDef HAL_NAND_Read_Page_16b (NAND_HandleTypeDef *hnand, NAND_AddressTypeDef *pAddress, uint16_t *pBuffer, uint32_t NumPageToRead)
 
HAL_StatusTypeDef HAL_NAND_Write_Page_8b (NAND_HandleTypeDef *hnand, NAND_AddressTypeDef *pAddress, uint8_t *pBuffer, uint32_t NumPageToWrite)
 
HAL_StatusTypeDef HAL_NAND_Write_Page_16b (NAND_HandleTypeDef *hnand, NAND_AddressTypeDef *pAddress, uint16_t *pBuffer, uint32_t NumPageToWrite)
 
HAL_StatusTypeDef HAL_NAND_Read_SpareArea_8b (NAND_HandleTypeDef *hnand, NAND_AddressTypeDef *pAddress, uint8_t *pBuffer, uint32_t NumSpareAreaToRead)
 
HAL_StatusTypeDef HAL_NAND_Read_SpareArea_16b (NAND_HandleTypeDef *hnand, NAND_AddressTypeDef *pAddress, uint16_t *pBuffer, uint32_t NumSpareAreaToRead)
 
HAL_StatusTypeDef HAL_NAND_Write_SpareArea_8b (NAND_HandleTypeDef *hnand, NAND_AddressTypeDef *pAddress, uint8_t *pBuffer, uint32_t NumSpareAreaTowrite)
 
HAL_StatusTypeDef HAL_NAND_Write_SpareArea_16b (NAND_HandleTypeDef *hnand, NAND_AddressTypeDef *pAddress, uint16_t *pBuffer, uint32_t NumSpareAreaTowrite)
 
HAL_StatusTypeDef HAL_NAND_Erase_Block (NAND_HandleTypeDef *hnand, NAND_AddressTypeDef *pAddress)
 
uint32_t HAL_NAND_Read_Status (NAND_HandleTypeDef *hnand)
 
uint32_t HAL_NAND_Address_Inc (NAND_HandleTypeDef *hnand, NAND_AddressTypeDef *pAddress)
 
HAL_StatusTypeDef HAL_NAND_ECC_Enable (NAND_HandleTypeDef *hnand)
 
HAL_StatusTypeDef HAL_NAND_ECC_Disable (NAND_HandleTypeDef *hnand)
 
HAL_StatusTypeDef HAL_NAND_GetECC (NAND_HandleTypeDef *hnand, uint32_t *ECCval, uint32_t Timeout)
 
HAL_NAND_StateTypeDef HAL_NAND_GetState (NAND_HandleTypeDef *hnand)
 

Detailed Description

Header file of NAND HAL module.

Author
MCD Application Team
Version
V1.1.0
Date
22-April-2016
Attention

© COPYRIGHT(c) 2016 STMicroelectronics

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

  1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
  2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
  3. Neither the name of STMicroelectronics nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Definition in file stm32f7xx_hal_nand.h.