STM32L4xx_HAL_Driver  1.14.0

management functions More...

Functions

HAL_StatusTypeDef FMC_NAND_ECC_Enable (FMC_NAND_TypeDef *Device, uint32_t Bank)
 Enables dynamically FMC_NAND ECC feature. More...
 
HAL_StatusTypeDef FMC_NAND_ECC_Disable (FMC_NAND_TypeDef *Device, uint32_t Bank)
 Disables dynamically FMC_NAND ECC feature. More...
 
HAL_StatusTypeDef FMC_NAND_GetECC (FMC_NAND_TypeDef *Device, uint32_t *ECCval, uint32_t Bank, uint32_t Timeout)
 Disables dynamically FMC_NAND ECC feature. More...
 

Detailed Description

management functions

  ==============================================================================
                       ##### FMC_NAND Control functions #####
  ==============================================================================
  [..]
    This subsection provides a set of functions allowing to control dynamically
    the FMC NAND interface.

Function Documentation

◆ FMC_NAND_ECC_Disable()

HAL_StatusTypeDef FMC_NAND_ECC_Disable ( FMC_NAND_TypeDef *  Device,
uint32_t  Bank 
)

Disables dynamically FMC_NAND ECC feature.

Parameters
DevicePointer to NAND device instance
BankNAND bank number
Return values
HALstatus

Definition at line 718 of file stm32l4xx_ll_fmc.c.

719 {
720  /* Check the parameters */
721  assert_param(IS_FMC_NAND_DEVICE(Device));
722 
723  /* Prevent unused argument(s) compilation warning if no assert_param check */
724  UNUSED(Bank);
725 
726  /* Disable ECC feature */
727  CLEAR_BIT(Device->PCR, FMC_PCR_ECCEN);
728 
729  return HAL_OK;
730 }
CLEAR_BIT(hrtc->Instance->CR, RTC_CR_WUTE)
return HAL_OK
assert_param(IS_RTC_WAKEUP_CLOCK(WakeUpClock))

◆ FMC_NAND_ECC_Enable()

HAL_StatusTypeDef FMC_NAND_ECC_Enable ( FMC_NAND_TypeDef *  Device,
uint32_t  Bank 
)

Enables dynamically FMC_NAND ECC feature.

Parameters
DevicePointer to NAND device instance
BankNAND bank number
Return values
HALstatus

Definition at line 697 of file stm32l4xx_ll_fmc.c.

698 {
699  /* Check the parameters */
700  assert_param(IS_FMC_NAND_DEVICE(Device));
701 
702  /* Prevent unused argument(s) compilation warning if no assert_param check */
703  UNUSED(Bank);
704 
705  /* Enable ECC feature */
706  SET_BIT(Device->PCR, FMC_PCR_ECCEN);
707 
708  return HAL_OK;
709 }
return HAL_OK
assert_param(IS_RTC_WAKEUP_CLOCK(WakeUpClock))

◆ FMC_NAND_GetECC()

HAL_StatusTypeDef FMC_NAND_GetECC ( FMC_NAND_TypeDef *  Device,
uint32_t *  ECCval,
uint32_t  Bank,
uint32_t  Timeout 
)

Disables dynamically FMC_NAND ECC feature.

Parameters
DevicePointer to NAND device instance
ECCvalPointer to ECC value
BankNAND bank number
TimeoutTimeout wait value
Return values
HALstatus

Definition at line 740 of file stm32l4xx_ll_fmc.c.

741 {
742  uint32_t tickstart = 0;
743 
744  /* Check the parameters */
745  assert_param(IS_FMC_NAND_DEVICE(Device));
746 
747  /* Prevent unused argument(s) compilation warning if no assert_param check */
748  UNUSED(Bank);
749 
750  /* Get tick */
751  tickstart = HAL_GetTick();
752 
753  /* Wait until FIFO is empty */
754  while (__FMC_NAND_GET_FLAG(Device, Bank, FMC_FLAG_FEMPT) == RESET)
755  {
756  /* Check for the Timeout */
757  if (Timeout != HAL_MAX_DELAY)
758  {
759  if ((Timeout == 0) || ((HAL_GetTick() - tickstart) > Timeout))
760  {
761  return HAL_TIMEOUT;
762  }
763  }
764  }
765 
766  /* Get the ECCR register value */
767  *ECCval = (uint32_t)Device->ECCR;
768 
769  return HAL_OK;
770 }
uint32_t HAL_GetTick(void)
Provide a tick value in millisecond.
return HAL_OK
assert_param(IS_RTC_WAKEUP_CLOCK(WakeUpClock))