STM32F439xx HAL User Manual
Data Structures | Defines | Functions
stm32f4xx_ll_gpio.h File Reference

Header file of GPIO LL module. More...

#include "stm32f4xx.h"

Go to the source code of this file.

Data Structures

struct  LL_GPIO_InitTypeDef
 LL GPIO Init Structure definition. More...

Defines

#define LL_GPIO_PIN_0   GPIO_BSRR_BS_0
#define LL_GPIO_PIN_1   GPIO_BSRR_BS_1
#define LL_GPIO_PIN_2   GPIO_BSRR_BS_2
#define LL_GPIO_PIN_3   GPIO_BSRR_BS_3
#define LL_GPIO_PIN_4   GPIO_BSRR_BS_4
#define LL_GPIO_PIN_5   GPIO_BSRR_BS_5
#define LL_GPIO_PIN_6   GPIO_BSRR_BS_6
#define LL_GPIO_PIN_7   GPIO_BSRR_BS_7
#define LL_GPIO_PIN_8   GPIO_BSRR_BS_8
#define LL_GPIO_PIN_9   GPIO_BSRR_BS_9
#define LL_GPIO_PIN_10   GPIO_BSRR_BS_10
#define LL_GPIO_PIN_11   GPIO_BSRR_BS_11
#define LL_GPIO_PIN_12   GPIO_BSRR_BS_12
#define LL_GPIO_PIN_13   GPIO_BSRR_BS_13
#define LL_GPIO_PIN_14   GPIO_BSRR_BS_14
#define LL_GPIO_PIN_15   GPIO_BSRR_BS_15
#define LL_GPIO_PIN_ALL
#define LL_GPIO_MODE_INPUT   (0x00000000U)
#define LL_GPIO_MODE_OUTPUT   GPIO_MODER_MODER0_0
#define LL_GPIO_MODE_ALTERNATE   GPIO_MODER_MODER0_1
#define LL_GPIO_MODE_ANALOG   GPIO_MODER_MODER0
#define LL_GPIO_OUTPUT_PUSHPULL   (0x00000000U)
#define LL_GPIO_OUTPUT_OPENDRAIN   GPIO_OTYPER_OT_0
#define LL_GPIO_SPEED_FREQ_LOW   (0x00000000U)
#define LL_GPIO_SPEED_FREQ_MEDIUM   GPIO_OSPEEDER_OSPEEDR0_0
#define LL_GPIO_SPEED_FREQ_HIGH   GPIO_OSPEEDER_OSPEEDR0_1
#define LL_GPIO_SPEED_FREQ_VERY_HIGH   GPIO_OSPEEDER_OSPEEDR0
#define LL_GPIO_PULL_NO   (0x00000000U)
#define LL_GPIO_PULL_UP   GPIO_PUPDR_PUPDR0_0
#define LL_GPIO_PULL_DOWN   GPIO_PUPDR_PUPDR0_1
#define LL_GPIO_AF_0   (0x0000000U)
#define LL_GPIO_AF_1   (0x0000001U)
#define LL_GPIO_AF_2   (0x0000002U)
#define LL_GPIO_AF_3   (0x0000003U)
#define LL_GPIO_AF_4   (0x0000004U)
#define LL_GPIO_AF_5   (0x0000005U)
#define LL_GPIO_AF_6   (0x0000006U)
#define LL_GPIO_AF_7   (0x0000007U)
#define LL_GPIO_AF_8   (0x0000008U)
#define LL_GPIO_AF_9   (0x0000009U)
#define LL_GPIO_AF_10   (0x000000AU)
#define LL_GPIO_AF_11   (0x000000BU)
#define LL_GPIO_AF_12   (0x000000CU)
#define LL_GPIO_AF_13   (0x000000DU)
#define LL_GPIO_AF_14   (0x000000EU)
#define LL_GPIO_AF_15   (0x000000FU)
#define LL_GPIO_WriteReg(__INSTANCE__, __REG__, __VALUE__)   WRITE_REG(__INSTANCE__->__REG__, (__VALUE__))
 Write a value in GPIO register.
#define LL_GPIO_ReadReg(__INSTANCE__, __REG__)   READ_REG(__INSTANCE__->__REG__)
 Read a value in GPIO register.

Functions

__STATIC_INLINE void LL_GPIO_SetPinMode (GPIO_TypeDef *GPIOx, uint32_t Pin, uint32_t Mode)
 Configure gpio mode for a dedicated pin on dedicated port.
__STATIC_INLINE uint32_t LL_GPIO_GetPinMode (GPIO_TypeDef *GPIOx, uint32_t Pin)
 Return gpio mode for a dedicated pin on dedicated port.
__STATIC_INLINE void LL_GPIO_SetPinOutputType (GPIO_TypeDef *GPIOx, uint32_t PinMask, uint32_t OutputType)
 Configure gpio output type for several pins on dedicated port.
__STATIC_INLINE uint32_t LL_GPIO_GetPinOutputType (GPIO_TypeDef *GPIOx, uint32_t Pin)
 Return gpio output type for several pins on dedicated port.
__STATIC_INLINE void LL_GPIO_SetPinSpeed (GPIO_TypeDef *GPIOx, uint32_t Pin, uint32_t Speed)
 Configure gpio speed for a dedicated pin on dedicated port.
__STATIC_INLINE uint32_t LL_GPIO_GetPinSpeed (GPIO_TypeDef *GPIOx, uint32_t Pin)
 Return gpio speed for a dedicated pin on dedicated port.
__STATIC_INLINE void LL_GPIO_SetPinPull (GPIO_TypeDef *GPIOx, uint32_t Pin, uint32_t Pull)
 Configure gpio pull-up or pull-down for a dedicated pin on a dedicated port.
__STATIC_INLINE uint32_t LL_GPIO_GetPinPull (GPIO_TypeDef *GPIOx, uint32_t Pin)
 Return gpio pull-up or pull-down for a dedicated pin on a dedicated port.
__STATIC_INLINE void LL_GPIO_SetAFPin_0_7 (GPIO_TypeDef *GPIOx, uint32_t Pin, uint32_t Alternate)
 Configure gpio alternate function of a dedicated pin from 0 to 7 for a dedicated port.
__STATIC_INLINE uint32_t LL_GPIO_GetAFPin_0_7 (GPIO_TypeDef *GPIOx, uint32_t Pin)
 Return gpio alternate function of a dedicated pin from 0 to 7 for a dedicated port.
__STATIC_INLINE void LL_GPIO_SetAFPin_8_15 (GPIO_TypeDef *GPIOx, uint32_t Pin, uint32_t Alternate)
 Configure gpio alternate function of a dedicated pin from 8 to 15 for a dedicated port.
__STATIC_INLINE uint32_t LL_GPIO_GetAFPin_8_15 (GPIO_TypeDef *GPIOx, uint32_t Pin)
 Return gpio alternate function of a dedicated pin from 8 to 15 for a dedicated port.
__STATIC_INLINE void LL_GPIO_LockPin (GPIO_TypeDef *GPIOx, uint32_t PinMask)
 Lock configuration of several pins for a dedicated port.
__STATIC_INLINE uint32_t LL_GPIO_IsPinLocked (GPIO_TypeDef *GPIOx, uint32_t PinMask)
 Return 1 if all pins passed as parameter, of a dedicated port, are locked.
__STATIC_INLINE uint32_t LL_GPIO_IsAnyPinLocked (GPIO_TypeDef *GPIOx)
 Return 1 if one of the pin of a dedicated port is locked.
__STATIC_INLINE uint32_t LL_GPIO_ReadInputPort (GPIO_TypeDef *GPIOx)
 Return full input data register value for a dedicated port.
__STATIC_INLINE uint32_t LL_GPIO_IsInputPinSet (GPIO_TypeDef *GPIOx, uint32_t PinMask)
 Return if input data level for several pins of dedicated port is high or low.
__STATIC_INLINE void LL_GPIO_WriteOutputPort (GPIO_TypeDef *GPIOx, uint32_t PortValue)
 Write output data register for the port.
__STATIC_INLINE uint32_t LL_GPIO_ReadOutputPort (GPIO_TypeDef *GPIOx)
 Return full output data register value for a dedicated port.
__STATIC_INLINE uint32_t LL_GPIO_IsOutputPinSet (GPIO_TypeDef *GPIOx, uint32_t PinMask)
 Return if input data level for several pins of dedicated port is high or low.
__STATIC_INLINE void LL_GPIO_SetOutputPin (GPIO_TypeDef *GPIOx, uint32_t PinMask)
 Set several pins to high level on dedicated gpio port.
__STATIC_INLINE void LL_GPIO_ResetOutputPin (GPIO_TypeDef *GPIOx, uint32_t PinMask)
 Set several pins to low level on dedicated gpio port.
__STATIC_INLINE void LL_GPIO_TogglePin (GPIO_TypeDef *GPIOx, uint32_t PinMask)
 Toggle data value for several pin of dedicated port.
ErrorStatus LL_GPIO_DeInit (GPIO_TypeDef *GPIOx)
 De-initialize GPIO registers (Registers restored to their default values).
ErrorStatus LL_GPIO_Init (GPIO_TypeDef *GPIOx, LL_GPIO_InitTypeDef *GPIO_InitStruct)
 Initialize GPIO registers according to the specified parameters in GPIO_InitStruct.
void LL_GPIO_StructInit (LL_GPIO_InitTypeDef *GPIO_InitStruct)
 Set each LL_GPIO_InitTypeDef field to default value.

Detailed Description

Header file of GPIO LL module.

Author:
MCD Application Team
Attention:

© COPYRIGHT(c) 2017 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 stm32f4xx_ll_gpio.h.