Libraries/STM32F4xx_StdPeriph_Driver/inc/stm32f4xx_gpio.h File Reference

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

#include "stm32f4xx.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_I2S3ext   ((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_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 Output type enumeration.


enum  GPIOSpeed_TypeDef { GPIO_Speed_2MHz = 0x00, GPIO_Speed_25MHz = 0x01, GPIO_Speed_50MHz = 0x02, GPIO_Speed_100MHz = 0x03 }
 

GPIO Output Maximum frequency enumeration.

More...
enum  GPIOPuPd_TypeDef { GPIO_PuPd_NOPULL = 0x00, GPIO_PuPd_UP = 0x01, GPIO_PuPd_DOWN = 0x02 }
 

GPIO Configuration PullUp PullDown enumeration.


enum  BitAction { Bit_RESET = 0, Bit_SET }
 

GPIO Bit SET and Bit RESET enumeration.


Functions

void GPIO_DeInit (GPIO_TypeDef *GPIOx)
 Deinitializes the GPIOx peripheral registers to their default reset values.
void GPIO_Init (GPIO_TypeDef *GPIOx, GPIO_InitTypeDef *GPIO_InitStruct)
 Initializes the GPIOx peripheral according to the specified parameters in the GPIO_InitStruct.
void GPIO_StructInit (GPIO_InitTypeDef *GPIO_InitStruct)
 Fills each GPIO_InitStruct member with its default value.
void GPIO_PinLockConfig (GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin)
 Locks GPIO Pins configuration registers.
uint8_t GPIO_ReadInputDataBit (GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin)
 Reads the specified input port pin.
uint16_t GPIO_ReadInputData (GPIO_TypeDef *GPIOx)
 Reads the specified GPIO input data port.
uint8_t GPIO_ReadOutputDataBit (GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin)
 Reads the specified output data port bit.
uint16_t GPIO_ReadOutputData (GPIO_TypeDef *GPIOx)
 Reads the specified GPIO output data port.
void GPIO_SetBits (GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin)
 Sets the selected data port bits.
void GPIO_ResetBits (GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin)
 Clears the selected data port bits.
void GPIO_WriteBit (GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin, BitAction BitVal)
 Sets or clears the selected data port bit.
void GPIO_Write (GPIO_TypeDef *GPIOx, uint16_t PortVal)
 Writes data to the specified GPIO data port.
void GPIO_ToggleBits (GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin)
 Toggles the specified GPIO pins..
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.2
Date:
05-March-2012
Attention:

© COPYRIGHT 2012 STMicroelectronics

Licensed under MCD-ST Liberty SW License Agreement V2, (the "License"); You may not use this file except in compliance with the License. You may obtain a copy of the License at:

http://www.st.com/software_license_agreement_liberty_v2

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Generated on Fri Jun 22 00:58:29 2012 for STM32F4xx_StdPeriph_Driver by  doxygen 1.6.3