STM32F4 Standard Peripheral bibliotheek
1.0
ST Microelectronics bibliotheek documentatie voor de STM32F4 Standard Peripheral Library
|
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... | |
Macros | |
#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) /* Pin 0 selected */ |
#define | GPIO_Pin_1 ((uint16_t)0x0002) /* Pin 1 selected */ |
#define | GPIO_Pin_2 ((uint16_t)0x0004) /* Pin 2 selected */ |
#define | GPIO_Pin_3 ((uint16_t)0x0008) /* Pin 3 selected */ |
#define | GPIO_Pin_4 ((uint16_t)0x0010) /* Pin 4 selected */ |
#define | GPIO_Pin_5 ((uint16_t)0x0020) /* Pin 5 selected */ |
#define | GPIO_Pin_6 ((uint16_t)0x0040) /* Pin 6 selected */ |
#define | GPIO_Pin_7 ((uint16_t)0x0080) /* Pin 7 selected */ |
#define | GPIO_Pin_8 ((uint16_t)0x0100) /* Pin 8 selected */ |
#define | GPIO_Pin_9 ((uint16_t)0x0200) /* Pin 9 selected */ |
#define | GPIO_Pin_10 ((uint16_t)0x0400) /* Pin 10 selected */ |
#define | GPIO_Pin_11 ((uint16_t)0x0800) /* Pin 11 selected */ |
#define | GPIO_Pin_12 ((uint16_t)0x1000) /* Pin 12 selected */ |
#define | GPIO_Pin_13 ((uint16_t)0x2000) /* Pin 13 selected */ |
#define | GPIO_Pin_14 ((uint16_t)0x4000) /* Pin 14 selected */ |
#define | GPIO_Pin_15 ((uint16_t)0x8000) /* Pin 15 selected */ |
#define | GPIO_Pin_All ((uint16_t)0xFFFF) /* All pins selected */ |
#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) /* RTC_50Hz Alternate Function mapping */ |
AF 0 selection. | |
#define | GPIO_AF_MCO ((uint8_t)0x00) /* MCO (MCO1 and MCO2) Alternate Function mapping */ |
#define | GPIO_AF_TAMPER ((uint8_t)0x00) /* TAMPER (TAMPER_1 and TAMPER_2) Alternate Function mapping */ |
#define | GPIO_AF_SWJ ((uint8_t)0x00) /* SWJ (SWD and JTAG) Alternate Function mapping */ |
#define | GPIO_AF_TRACE ((uint8_t)0x00) /* TRACE Alternate Function mapping */ |
#define | GPIO_AF_TIM1 ((uint8_t)0x01) /* TIM1 Alternate Function mapping */ |
AF 1 selection. | |
#define | GPIO_AF_TIM2 ((uint8_t)0x01) /* TIM2 Alternate Function mapping */ |
#define | GPIO_AF_TIM3 ((uint8_t)0x02) /* TIM3 Alternate Function mapping */ |
AF 2 selection. | |
#define | GPIO_AF_TIM4 ((uint8_t)0x02) /* TIM4 Alternate Function mapping */ |
#define | GPIO_AF_TIM5 ((uint8_t)0x02) /* TIM5 Alternate Function mapping */ |
#define | GPIO_AF_TIM8 ((uint8_t)0x03) /* TIM8 Alternate Function mapping */ |
AF 3 selection. | |
#define | GPIO_AF_TIM9 ((uint8_t)0x03) /* TIM9 Alternate Function mapping */ |
#define | GPIO_AF_TIM10 ((uint8_t)0x03) /* TIM10 Alternate Function mapping */ |
#define | GPIO_AF_TIM11 ((uint8_t)0x03) /* TIM11 Alternate Function mapping */ |
#define | GPIO_AF_I2C1 ((uint8_t)0x04) /* I2C1 Alternate Function mapping */ |
AF 4 selection. | |
#define | GPIO_AF_I2C2 ((uint8_t)0x04) /* I2C2 Alternate Function mapping */ |
#define | GPIO_AF_I2C3 ((uint8_t)0x04) /* I2C3 Alternate Function mapping */ |
#define | GPIO_AF_SPI1 ((uint8_t)0x05) /* SPI1 Alternate Function mapping */ |
AF 5 selection. | |
#define | GPIO_AF_SPI2 ((uint8_t)0x05) /* SPI2/I2S2 Alternate Function mapping */ |
#define | GPIO_AF_SPI3 ((uint8_t)0x06) /* SPI3/I2S3 Alternate Function mapping */ |
AF 6 selection. | |
#define | GPIO_AF_USART1 ((uint8_t)0x07) /* USART1 Alternate Function mapping */ |
AF 7 selection. | |
#define | GPIO_AF_USART2 ((uint8_t)0x07) /* USART2 Alternate Function mapping */ |
#define | GPIO_AF_USART3 ((uint8_t)0x07) /* USART3 Alternate Function mapping */ |
#define | GPIO_AF_I2S3ext ((uint8_t)0x07) /* I2S3ext Alternate Function mapping */ |
#define | GPIO_AF_UART4 ((uint8_t)0x08) /* UART4 Alternate Function mapping */ |
AF 8 selection. | |
#define | GPIO_AF_UART5 ((uint8_t)0x08) /* UART5 Alternate Function mapping */ |
#define | GPIO_AF_USART6 ((uint8_t)0x08) /* USART6 Alternate Function mapping */ |
#define | GPIO_AF_CAN1 ((uint8_t)0x09) /* CAN1 Alternate Function mapping */ |
AF 9 selection. | |
#define | GPIO_AF_CAN2 ((uint8_t)0x09) /* CAN2 Alternate Function mapping */ |
#define | GPIO_AF_TIM12 ((uint8_t)0x09) /* TIM12 Alternate Function mapping */ |
#define | GPIO_AF_TIM13 ((uint8_t)0x09) /* TIM13 Alternate Function mapping */ |
#define | GPIO_AF_TIM14 ((uint8_t)0x09) /* TIM14 Alternate Function mapping */ |
#define | GPIO_AF_OTG_FS ((uint8_t)0xA) /* OTG_FS Alternate Function mapping */ |
AF 10 selection. | |
#define | GPIO_AF_OTG_HS ((uint8_t)0xA) /* OTG_HS Alternate Function mapping */ |
#define | GPIO_AF_ETH ((uint8_t)0x0B) /* ETHERNET Alternate Function mapping */ |
AF 11 selection. | |
#define | GPIO_AF_FSMC ((uint8_t)0xC) /* FSMC Alternate Function mapping */ |
AF 12 selection. | |
#define | GPIO_AF_OTG_HS_FS ((uint8_t)0xC) /* OTG HS configured in FS, Alternate Function mapping */ |
#define | GPIO_AF_SDIO ((uint8_t)0xC) /* SDIO Alternate Function mapping */ |
#define | GPIO_AF_DCMI ((uint8_t)0x0D) /* DCMI Alternate Function mapping */ |
AF 13 selection. | |
#define | GPIO_AF_EVENTOUT ((uint8_t)0x0F) /* EVENTOUT Alternate Function mapping */ |
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. More... | |
void | GPIO_Init (GPIO_TypeDef *GPIOx, GPIO_InitTypeDef *GPIO_InitStruct) |
Initializes the GPIOx peripheral according to the specified parameters in the GPIO_InitStruct. More... | |
void | GPIO_StructInit (GPIO_InitTypeDef *GPIO_InitStruct) |
Fills each GPIO_InitStruct member with its default value. More... | |
void | GPIO_PinLockConfig (GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin) |
Locks GPIO Pins configuration registers. 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) |
Toggles the specified GPIO pins.. More... | |
void | GPIO_PinAFConfig (GPIO_TypeDef *GPIOx, uint16_t GPIO_PinSource, uint8_t GPIO_AF) |
Changes the mapping of the specified pin. More... | |
This file contains all the functions prototypes for the GPIO firmware library.
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.