WB32L003 Standard Peripherals Firmware Library

Functions
GPIO_Private_Functions
WB32L003_StdPeriph_Driver » GPIO

## Functions
void | GPIO_DeInit (GPIO_TypeDef *GPIOx)
| De-initializes the GPIOx peripheral registers to their default reset values. More...
void | GPIO_Init (GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin, uint32_t PinConfig)
| Initializes the GPIOx peripheral according to the PinConfig. More...
void | GPIO_SetAFPin (GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin, uint32_t Alternate)
| Configure gpio alternate function of any pins for a dedicated port. More...
uint8_t | GPIO_ReadInputDataBit (GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin)
| Reads the specified input port pin. More...
uint16_t | GPIO_ReadInputData (GPIO_TypeDef *GPIOx)
| Reads the specified GPIO input data port. More...
uint8_t | GPIO_ReadOutputDataBit (GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin)
| Reads the specified output data port bit. More...
uint16_t | GPIO_ReadOutputData (GPIO_TypeDef *GPIOx)
| Reads the specified GPIO output data port. More...
void | GPIO_SetBits (GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin)
| Sets the selected data port bits. More...
void | GPIO_ResetBits (GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin)
| Clears the selected data port bits. More...
void | GPIO_WriteBit (GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin, BitAction BitVal)
| Sets or clears the selected data port bit. More...
void | GPIO_Write (GPIO_TypeDef *GPIOx, uint16_t PortVal)
| Writes data to the specified GPIO data port. More...
void | GPIO_ToggleBits (GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin)
| Toggle data value for several pin of specified port. More...
void | GPIO_DriveCurrentConfig (GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin, uint32_t Current)
| Configure the drive current of several pins for a specified port. More...
void | GPIO_EXTIConfig (GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin, uint32_t EXTI_Config)
| Handles the configuration of GPIO_Pin's EXTI. More...
void | GPIO_DebounceConfig (GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin, uint32_t DebounceConfig)
| Handles the configuration of GPIO debounce. More...
FlagStatus | GPIO_EXTI_GetFlagStatus (GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin)
| Checks whether the specified GPIO_Pin's EXTI line flag is set or not. More...
void | GPIO_EXTI_ClearFlag (GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin)
| Clears the GPIO_Pin's EXTI line pending flags. More...
ITStatus | GPIO_EXTI_GetIT (GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin)
| Checks that the interrupt of the EXTI line for the specified GPIO Pin is enabled. More...
void | GPIO_EXTI_ClearIT (GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin)
| Clears the GPIO_Pin's EXTI line pending bits. More...

## Detailed Description

## Function Documentation

## ◆ GPIO_DebounceConfig()

void GPIO_DebounceConfig | ( | GPIO_TypeDef * | GPIOx,
|  | uint16_t | GPIO_Pin,
|  | uint32_t | DebounceConfig
| ) |  |

Handles the configuration of GPIO debounce.

Parameters

  GPIOx | Where x can be (A..D) to select the GPIO peripheral.
  GPIO_Pin | Specifies the pins to be configured. This parameter can be any combination of GPIO_Pin_x where x can be (0..7).
  DebounceConfig | The port bit configuration. This parameter must be a combination of one GPIO_DB_x flags.

Return values

  None |

## ◆ GPIO_DeInit()

void GPIO_DeInit | ( | GPIO_TypeDef * | GPIOx | ) |

De-initializes the GPIOx peripheral registers to their default reset values.

Parameters

  GPIOx | Where x can be (A..D) to select the GPIO peripheral.

Return values

  None |

## ◆ GPIO_DriveCurrentConfig()

void GPIO_DriveCurrentConfig | ( | GPIO_TypeDef * | GPIOx,
|  | uint16_t | GPIO_Pin,
|  | uint32_t | Current
| ) |  |

Configure the drive current of several pins for a specified port.

Parameters

  GPIOx | Where x can be (A..D) to select the GPIO peripheral.
  GPIO_Pin | Specifies the pins to be configured. This parameter can be any combination of GPIO_Pin_x where x can be (0..7).
  Current | Specifies the drive current. This parameter can be one of the following values: GPIO_DRV_HIGH: High driving strength. GPIO_DRV_LOW: Low driving strength

Return values

  None |

## ◆ GPIO_EXTI_ClearFlag()

void GPIO_EXTI_ClearFlag | ( | GPIO_TypeDef * | GPIOx,
|  | uint16_t | GPIO_Pin
| ) |  |

Clears the GPIO_Pin's EXTI line pending flags.

Parameters

  GPIOx | Where x can be (A..D) to select the GPIO peripheral.
  GPIO_Pin | Specifies the pins flags to clear. This parameter can be any combination of GPIO_Pin_x where x can be (0..7).

Return values

  None |

## ◆ GPIO_EXTI_ClearIT()

void GPIO_EXTI_ClearIT | ( | GPIO_TypeDef * | GPIOx,
|  | uint16_t | GPIO_Pin
| ) |  |

Clears the GPIO_Pin's EXTI line pending bits.

Parameters

  GPIOx | Where x can be (A..D) to select the GPIO peripheral.
  GPIO_Pin | Specifies the GPIO_Pin's EXTI lines to clear. This parameter can be any combination of GPIO_Pin_x where x can be (0..7).

Return values

  None |

## ◆ GPIO_EXTI_GetFlagStatus()

FlagStatus GPIO_EXTI_GetFlagStatus | ( | GPIO_TypeDef * | GPIOx,
|  | uint16_t | GPIO_Pin
| ) |  |

Checks whether the specified GPIO_Pin's EXTI line flag is set or not.

Parameters

  GPIOx | Where x can be (A..D) to select the GPIO peripheral.
  GPIO_Pin | specifies the pins flag to check. This parameter can be any combination of GPIO_Pin_x where x can be (0..7).

Return values

  The | new state of GPIO_Pin's EXTI line (SET or RESET).

## ◆ GPIO_EXTI_GetIT()

ITStatus GPIO_EXTI_GetIT | ( | GPIO_TypeDef * | GPIOx,
|  | uint16_t | GPIO_Pin
| ) |  |

Checks that the interrupt of the EXTI line for the specified GPIO Pin is enabled.

Parameters

  GPIOx | Where x can be (A..D) to select the GPIO peripheral.
  GPIO_Pin | Specifies the pins to check. This parameter can be any combination of GPIO_Pin_x where x can be (0..7).

Return values

  The | new state of interrupt enabled for the GPIO_Pin's EXTI line (SET or RESET).

## ◆ GPIO_EXTIConfig()

void GPIO_EXTIConfig | ( | GPIO_TypeDef * | GPIOx,
|  | uint16_t | GPIO_Pin,
|  | uint32_t | EXTI_Config
| ) |  |

Handles the configuration of GPIO_Pin's EXTI.

Parameters

  GPIOx | Where x can be (A..D) to select the GPIO peripheral.
  GPIO_Pin | Specifies the pins to be configured. This parameter can be any combination of GPIO_Pin_x where x can be (0..7).
  EXTI_Config | The port bit configuration. This parameter must be a combination of one GPIO_EXTI_define GPIO_EXTI_x flags.

Return values

  None |

## ◆ GPIO_Init()

void GPIO_Init | ( | GPIO_TypeDef * | GPIOx,
|  | uint16_t | GPIO_Pin,
|  | uint32_t | PinConfig
| ) |  |

Initializes the GPIOx peripheral according to the PinConfig.

Parameters

  GPIOx | Where x can be (A..D) to select the GPIO peripheral.
  GPIO_Pin | Specifies the port bit to be initialized. This parameter can be any combination of GPIO_Pin_x where x can be (0..7).
  PinConfig | The port bit configuration. This parameter must be a combination of one GPIO_MODE_x flag, one GPIO_OTYPE_x flag, one GPIO_PUPD_x flag, one GPIO_DRV_x flag, one GPIO_SPEED_x flag and one GPIO_AFx flag.

Return values

  None |

## ◆ GPIO_ReadInputData()

uint16_t GPIO_ReadInputData | ( | GPIO_TypeDef * | GPIOx | ) |

Reads the specified GPIO input data port.

Parameters

  GPIOx | Where x can be (A..D) to select the GPIO peripheral.

Return values

  GPIO | input data port value.

## ◆ GPIO_ReadInputDataBit()

uint8_t GPIO_ReadInputDataBit | ( | GPIO_TypeDef * | GPIOx,
|  | uint16_t | GPIO_Pin
| ) |  |

Reads the specified input port pin.

Parameters

  GPIOx | Where x can be (A..D) to select the GPIO peripheral.
  GPIO_Pin | Specifies the port bit to read. This parameter can be GPIO_Pin_x where x can be (0..7).

Return values

  The | input port pin value.

## ◆ GPIO_ReadOutputData()

uint16_t GPIO_ReadOutputData | ( | GPIO_TypeDef * | GPIOx | ) |

Reads the specified GPIO output data port.

Parameters

  GPIOx | Where x can be (A..D) to select the GPIO peripheral.

Return values

  GPIO | output data port value.

## ◆ GPIO_ReadOutputDataBit()

uint8_t GPIO_ReadOutputDataBit | ( | GPIO_TypeDef * | GPIOx,
|  | uint16_t | GPIO_Pin
| ) |  |

Reads the specified output data port bit.

Parameters

  GPIOx | Where x can be (A..D) to select the GPIO peripheral.
  GPIO_Pin | Specifies the port bit to read. This parameter can be GPIO_Pin_x where x can be (0..7).

Return values

  The | output port pin value.

## ◆ GPIO_ResetBits()

void GPIO_ResetBits | ( | GPIO_TypeDef * | GPIOx,
|  | uint16_t | GPIO_Pin
| ) |  |

Clears the selected data port bits.

Parameters

  GPIOx | Where x can be (A..D) to select the GPIO peripheral.
  GPIO_Pin | Specifies the port bits to be written. This parameter can be any combination of GPIO_Pin_x where x can be (0..7).

Return values

  None |

## ◆ GPIO_SetAFPin()

void GPIO_SetAFPin | ( | GPIO_TypeDef * | GPIOx,
|  | uint16_t | GPIO_Pin,
|  | uint32_t | Alternate
| ) |  |

Configure gpio alternate function of any pins for a dedicated port.

Note
  Possible values are from AF0 to AF15 depending on target.

Parameters

  GPIOx | Where x can be (A..D) to select the GPIO peripheral.
  GPIO_Pin | Specifies the port bits to configure. This parameter can be any combination of GPIO_Pin_x where x can be (0..7).
  Alternate | This parameter can be GPIO_AFx where x can be (0..15).

Return values

  None |

## ◆ GPIO_SetBits()

void GPIO_SetBits | ( | GPIO_TypeDef * | GPIOx,
|  | uint16_t | GPIO_Pin
| ) |  |

Sets the selected data port bits.

Parameters

  GPIOx | Where x can be (A..D) to select the GPIO peripheral.
  GPIO_Pin | Specifies the port bits to be written. This parameter can be any combination of GPIO_Pin_x where x can be (0..7).

Return values

  None |

## ◆ GPIO_ToggleBits()

void GPIO_ToggleBits | ( | GPIO_TypeDef * | GPIOx,
|  | uint16_t | GPIO_Pin
| ) |  |

Toggle data value for several pin of specified port.

Parameters

  GPIOx | Where x can be (A..D) to select the GPIO peripheral.
  GPIO_Pin | Specifies the pins to be toggled. This parameter can be any combination of GPIO_Pin_x where x can be (0..7).

Return values

  None |

## ◆ GPIO_Write()

void GPIO_Write | ( | GPIO_TypeDef * | GPIOx,
|  | uint16_t | PortVal
| ) |  |

Writes data to the specified GPIO data port.

Parameters

  GPIOx | Where x can be (A..D) to select the GPIO peripheral.
  PortVal | Specifies the value to be written to the port output data register.

Return values

  None |

## ◆ GPIO_WriteBit()

void GPIO_WriteBit | ( | GPIO_TypeDef * | GPIOx,
|  | uint16_t | GPIO_Pin,
|  | BitAction | BitVal
| ) |  |

Sets or clears the selected data port bit.

Parameters

  GPIOx | Where x can be (A..D) to select the GPIO peripheral.
  GPIO_Pin | Specifies the port bit to be written. This parameter can be one of GPIO_Pin_x where x can be (0..7).
  BitVal | Specifies the value to be written to the selected bit. This parameter can be one of the BitAction enum values: Bit_RESET: to clear the port pin Bit_SET: to set the port pin

Return values

  None |