Nut/OS  5.0.5
API Reference
stm32f2xx_gpio.h File Reference

This file contains all the functions prototypes for the GPIO firmware library. More...

#include "stm32f2xx.h"
Include dependency graph for stm32f2xx_gpio.h:

Go to the source code of this file.

Data Structures

struct  GPIO_InitTypeDef
 GPIO Init structure definition. More...

Defines

#define IS_GPIO_ALL_PERIPH(PERIPH)
#define IS_GPIO_MODE(MODE)
#define IS_GPIO_OTYPE(OTYPE)   (((OTYPE) == GPIO_OType_PP) || ((OTYPE) == GPIO_OType_OD))
#define IS_GPIO_SPEED(SPEED)
#define IS_GPIO_PUPD(PUPD)
#define IS_GPIO_BIT_ACTION(ACTION)   (((ACTION) == Bit_RESET) || ((ACTION) == Bit_SET))
#define GPIO_Pin_0   ((uint16_t)0x0001)
#define GPIO_Pin_1   ((uint16_t)0x0002)
#define GPIO_Pin_2   ((uint16_t)0x0004)
#define GPIO_Pin_3   ((uint16_t)0x0008)
#define GPIO_Pin_4   ((uint16_t)0x0010)
#define GPIO_Pin_5   ((uint16_t)0x0020)
#define GPIO_Pin_6   ((uint16_t)0x0040)
#define GPIO_Pin_7   ((uint16_t)0x0080)
#define GPIO_Pin_8   ((uint16_t)0x0100)
#define GPIO_Pin_9   ((uint16_t)0x0200)
#define GPIO_Pin_10   ((uint16_t)0x0400)
#define GPIO_Pin_11   ((uint16_t)0x0800)
#define GPIO_Pin_12   ((uint16_t)0x1000)
#define GPIO_Pin_13   ((uint16_t)0x2000)
#define GPIO_Pin_14   ((uint16_t)0x4000)
#define GPIO_Pin_15   ((uint16_t)0x8000)
#define GPIO_Pin_All   ((uint16_t)0xFFFF)
#define IS_GPIO_PIN(PIN)   ((((PIN) & (uint16_t)0x00) == 0x00) && ((PIN) != (uint16_t)0x00))
#define IS_GET_GPIO_PIN(PIN)
#define GPIO_PinSource0   ((uint8_t)0x00)
#define GPIO_PinSource1   ((uint8_t)0x01)
#define GPIO_PinSource2   ((uint8_t)0x02)
#define GPIO_PinSource3   ((uint8_t)0x03)
#define GPIO_PinSource4   ((uint8_t)0x04)
#define GPIO_PinSource5   ((uint8_t)0x05)
#define GPIO_PinSource6   ((uint8_t)0x06)
#define GPIO_PinSource7   ((uint8_t)0x07)
#define GPIO_PinSource8   ((uint8_t)0x08)
#define GPIO_PinSource9   ((uint8_t)0x09)
#define GPIO_PinSource10   ((uint8_t)0x0A)
#define GPIO_PinSource11   ((uint8_t)0x0B)
#define GPIO_PinSource12   ((uint8_t)0x0C)
#define GPIO_PinSource13   ((uint8_t)0x0D)
#define GPIO_PinSource14   ((uint8_t)0x0E)
#define GPIO_PinSource15   ((uint8_t)0x0F)
#define IS_GPIO_PIN_SOURCE(PINSOURCE)
#define GPIO_AF_RTC_50Hz   ((uint8_t)0x00)
 AF 0 selection.
#define GPIO_AF_MCO   ((uint8_t)0x00)
#define GPIO_AF_TAMPER   ((uint8_t)0x00)
#define GPIO_AF_SWJ   ((uint8_t)0x00)
#define GPIO_AF_TRACE   ((uint8_t)0x00)
#define GPIO_AF_TIM1   ((uint8_t)0x01)
 AF 1 selection.
#define GPIO_AF_TIM2   ((uint8_t)0x01)
#define GPIO_AF_TIM3   ((uint8_t)0x02)
 AF 2 selection.
#define GPIO_AF_TIM4   ((uint8_t)0x02)
#define GPIO_AF_TIM5   ((uint8_t)0x02)
#define GPIO_AF_TIM8   ((uint8_t)0x03)
 AF 3 selection.
#define GPIO_AF_TIM9   ((uint8_t)0x03)
#define GPIO_AF_TIM10   ((uint8_t)0x03)
#define GPIO_AF_TIM11   ((uint8_t)0x03)
#define GPIO_AF_I2C1   ((uint8_t)0x04)
 AF 4 selection.
#define GPIO_AF_I2C2   ((uint8_t)0x04)
#define GPIO_AF_I2C3   ((uint8_t)0x04)
#define GPIO_AF_SPI1   ((uint8_t)0x05)
 AF 5 selection.
#define GPIO_AF_SPI2   ((uint8_t)0x05)
#define GPIO_AF_SPI3   ((uint8_t)0x06)
 AF 6 selection.
#define GPIO_AF_USART1   ((uint8_t)0x07)
 AF 7 selection.
#define GPIO_AF_USART2   ((uint8_t)0x07)
#define GPIO_AF_USART3   ((uint8_t)0x07)
#define GPIO_AF_UART4   ((uint8_t)0x08)
 AF 8 selection.
#define GPIO_AF_UART5   ((uint8_t)0x08)
#define GPIO_AF_USART6   ((uint8_t)0x08)
#define GPIO_AF_CAN1   ((uint8_t)0x09)
 AF 9 selection.
#define GPIO_AF_CAN2   ((uint8_t)0x09)
#define GPIO_AF_TIM12   ((uint8_t)0x09)
#define GPIO_AF_TIM13   ((uint8_t)0x09)
#define GPIO_AF_TIM14   ((uint8_t)0x09)
#define GPIO_AF_OTG_FS   ((uint8_t)0xA)
 AF 10 selection.
#define GPIO_AF_OTG_HS   ((uint8_t)0xA)
#define GPIO_AF_ETH   ((uint8_t)0x0B)
 AF 11 selection.
#define GPIO_AF_FSMC   ((uint8_t)0xC)
 AF 12 selection.
#define GPIO_AF_OTG_HS_FS   ((uint8_t)0xC)
#define GPIO_AF_SDIO   ((uint8_t)0xC)
#define GPIO_AF_DCMI   ((uint8_t)0x0D)
 AF 13 selection.
#define GPIO_AF_EVENTOUT   ((uint8_t)0x0F)
 AF 15 selection.
#define IS_GPIO_AF(AF)
#define GPIO_Mode_AIN   GPIO_Mode_AN
#define GPIO_AF_OTG1_FS   GPIO_AF_OTG_FS
#define GPIO_AF_OTG2_HS   GPIO_AF_OTG_HS
#define GPIO_AF_OTG2_FS   GPIO_AF_OTG_HS_FS

Enumerations

enum  GPIOMode_TypeDef {
  GPIO_Mode_AIN = 0x0, GPIO_Mode_IN_FLOATING = 0x04, GPIO_Mode_IPD = 0x28, GPIO_Mode_IPU = 0x48,
  GPIO_Mode_Out_OD = 0x14, GPIO_Mode_Out_PP = 0x10, GPIO_Mode_AF_OD = 0x1C, GPIO_Mode_AF_PP = 0x18,
  GPIO_Mode_IN = 0x00, GPIO_Mode_OUT = 0x01, GPIO_Mode_AF = 0x02, GPIO_Mode_AN = 0x03,
  GPIO_Mode_IN = 0x00, GPIO_Mode_OUT = 0x01, GPIO_Mode_AF = 0x02, GPIO_Mode_AN = 0x03,
  GPIO_Mode_IN = 0x00, GPIO_Mode_OUT = 0x01, GPIO_Mode_AF = 0x02, GPIO_Mode_AN = 0x03
}
 GPIO Configuration Mode enumeration. More...
enum  GPIOOType_TypeDef {
  GPIO_OType_PP = 0x00, GPIO_OType_OD = 0x01, GPIO_OType_PP = 0x00, GPIO_OType_OD = 0x01,
  GPIO_OType_PP = 0x00, GPIO_OType_OD = 0x01
}
 GPIO Output type enumeration. More...
enum  GPIOSpeed_TypeDef {
  GPIO_Speed_10MHz = 1, GPIO_Speed_2MHz, GPIO_Speed_50MHz, GPIO_Speed_2MHz = 0x00,
  GPIO_Speed_25MHz = 0x01, GPIO_Speed_50MHz = 0x02, GPIO_Speed_100MHz = 0x03, GPIO_Speed_2MHz = 0x00,
  GPIO_Speed_25MHz = 0x01, GPIO_Speed_50MHz = 0x02, GPIO_Speed_100MHz = 0x03, GPIO_Speed_400KHz = 0x00,
  GPIO_Speed_2MHz = 0x01, GPIO_Speed_10MHz = 0x02, GPIO_Speed_40MHz = 0x03
}
 GPIO Output Maximum frequency enumeration. More...
enum  GPIOPuPd_TypeDef {
  GPIO_PuPd_NOPULL = 0x00, GPIO_PuPd_UP = 0x01, GPIO_PuPd_DOWN = 0x02, GPIO_PuPd_NOPULL = 0x00,
  GPIO_PuPd_UP = 0x01, GPIO_PuPd_DOWN = 0x02, GPIO_PuPd_NOPULL = 0x00, GPIO_PuPd_UP = 0x01,
  GPIO_PuPd_DOWN = 0x02
}
 GPIO Configuration PullUp PullDown enumeration. More...
enum  BitAction {
  Bit_RESET = 0, Bit_SET, Bit_RESET = 0, Bit_SET,
  Bit_RESET = 0, Bit_SET
}
 GPIO Bit SET and Bit RESET enumeration. More...

Functions

void GPIO_DeInit (GPIO_TypeDef *GPIOx)
void GPIO_Init (GPIO_TypeDef *GPIOx, GPIO_InitTypeDef *GPIO_InitStruct)
void GPIO_StructInit (GPIO_InitTypeDef *GPIO_InitStruct)
void GPIO_PinLockConfig (GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin)
uint8_t GPIO_ReadInputDataBit (GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin)
uint16_t GPIO_ReadInputData (GPIO_TypeDef *GPIOx)
uint8_t GPIO_ReadOutputDataBit (GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin)
uint16_t GPIO_ReadOutputData (GPIO_TypeDef *GPIOx)
void GPIO_SetBits (GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin)
void GPIO_ResetBits (GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin)
void GPIO_WriteBit (GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin, BitAction BitVal)
void GPIO_Write (GPIO_TypeDef *GPIOx, uint16_t PortVal)
void GPIO_ToggleBits (GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin)
void GPIO_PinAFConfig (GPIO_TypeDef *GPIOx, uint16_t GPIO_PinSource, uint8_t GPIO_AF)
 Changes the mapping of the specified pin.

Detailed Description

This file contains all the functions prototypes for the GPIO firmware library.

Author:
MCD Application Team
Version:
V1.0.0
Date:
18-April-2011
Attention:

THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME. AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT, INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS.

© COPYRIGHT 2011 STMicroelectronics