STM32F4xx HAL Driver master
STM32CubeF4 HAL / LL Drivers API Reference
Loading...
Searching...
No Matches
stm32f4xx_hal_def.h File Reference

This file contains HAL common defines, enumeration, macros and structures definitions. More...

#include "stm32f4xx.h"
#include "Legacy/stm32_hal_legacy.h"
#include <stddef.h>
Include dependency graph for stm32f4xx_hal_def.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define HAL_MAX_DELAY   0xFFFFFFFFU
#define HAL_IS_BIT_SET(REG, BIT)
#define HAL_IS_BIT_CLR(REG, BIT)
#define __HAL_LINKDMA(__HANDLE__, __PPP_DMA_FIELD__, __DMA_HANDLE__)
#define __HAL_RESET_HANDLE_STATE(__HANDLE__)
 Reset the Handle's State field.
#define __HAL_LOCK(__HANDLE__)
#define __HAL_UNLOCK(__HANDLE__)
#define __ALIGN_END

Enumerations

enum  HAL_StatusTypeDef { HAL_OK = 0x00U , HAL_ERROR = 0x01U , HAL_BUSY = 0x02U , HAL_TIMEOUT = 0x03U }
 HAL Status structures definition. More...
enum  HAL_LockTypeDef { HAL_UNLOCKED = 0x00U , HAL_LOCKED = 0x01U }
 HAL Lock structures definition. More...

Detailed Description

This file contains HAL common defines, enumeration, macros and structures definitions.

Author
MCD Application Team
Attention

Copyright (c) 2017 STMicroelectronics. All rights reserved.

This software is licensed under terms that can be found in the LICENSE file in the root directory of this software component. If no LICENSE file comes with this software, it is provided AS-IS.

Definition in file stm32f4xx_hal_def.h.

Macro Definition Documentation

◆ __ALIGN_END

#define __ALIGN_END

Definition at line 145 of file stm32f4xx_hal_def.h.

◆ __HAL_LINKDMA

#define __HAL_LINKDMA ( __HANDLE__,
__PPP_DMA_FIELD__,
__DMA_HANDLE__ )
Value:
do{ \
(__HANDLE__)->__PPP_DMA_FIELD__ = &(__DMA_HANDLE__); \
(__DMA_HANDLE__).Parent = (__HANDLE__); \
} while(0U)

Definition at line 66 of file stm32f4xx_hal_def.h.

◆ __HAL_LOCK

#define __HAL_LOCK ( __HANDLE__)
Value:
do{ \
if((__HANDLE__)->Lock == HAL_LOCKED) \
{ \
return HAL_BUSY; \
} \
else \
{ \
(__HANDLE__)->Lock = HAL_LOCKED; \
} \
}while (0U)
@ HAL_BUSY
@ HAL_LOCKED

Definition at line 93 of file stm32f4xx_hal_def.h.

◆ __HAL_RESET_HANDLE_STATE

#define __HAL_RESET_HANDLE_STATE ( __HANDLE__)
Value:
((__HANDLE__)->State = 0U)

Reset the Handle's State field.

Parameters
__HANDLE__specifies the Peripheral Handle.
Note
This macro can be used for the following purpose:
  • When the Handle is declared as local variable; before passing it as parameter to HAL_PPP_Init() for the first time, it is mandatory to use this macro to set to 0 the Handle's "State" field. Otherwise, "State" field may have any random value and the first time the function HAL_PPP_Init() is called, the low level hardware initialization will be missed (i.e. HAL_PPP_MspInit() will not be executed).
  • When there is a need to reconfigure the low level hardware: instead of calling HAL_PPP_DeInit() then HAL_PPP_Init(), user can make a call to this macro then HAL_PPP_Init(). In this later function, when the Handle's "State" field is set to 0, it will execute the function HAL_PPP_MspInit() which will reconfigure the low level hardware.
Return values
None

Definition at line 87 of file stm32f4xx_hal_def.h.

◆ __HAL_UNLOCK

#define __HAL_UNLOCK ( __HANDLE__)
Value:
do{ \
(__HANDLE__)->Lock = HAL_UNLOCKED; \
}while (0U)
@ HAL_UNLOCKED

Definition at line 105 of file stm32f4xx_hal_def.h.

◆ HAL_IS_BIT_CLR

#define HAL_IS_BIT_CLR ( REG,
BIT )
Value:
(((REG) & (BIT)) == 0U)

Definition at line 64 of file stm32f4xx_hal_def.h.

◆ HAL_IS_BIT_SET

#define HAL_IS_BIT_SET ( REG,
BIT )
Value:
(((REG) & (BIT)) == (BIT))

Definition at line 63 of file stm32f4xx_hal_def.h.

◆ HAL_MAX_DELAY

#define HAL_MAX_DELAY   0xFFFFFFFFU

Definition at line 61 of file stm32f4xx_hal_def.h.

Referenced by HAL_Delay().

Enumeration Type Documentation

◆ HAL_LockTypeDef

HAL Lock structures definition.

Enumerator
HAL_UNLOCKED 
HAL_LOCKED 

Definition at line 49 of file stm32f4xx_hal_def.h.

◆ HAL_StatusTypeDef

HAL Status structures definition.

Enumerator
HAL_OK 
HAL_ERROR 
HAL_BUSY 
HAL_TIMEOUT 

Definition at line 38 of file stm32f4xx_hal_def.h.