20#ifndef __STM32F3xx_LL_GPIO_H
21#define __STM32F3xx_LL_GPIO_H
34#if defined (GPIOA) || defined (GPIOB) || defined (GPIOC) || defined (GPIOD) || defined (GPIOE) || defined (GPIOF) || defined (GPIOG) || defined (GPIOH)
44#if defined(USE_FULL_LL_DRIVER)
55#if defined(USE_FULL_LL_DRIVER)
107#define LL_GPIO_PIN_0 GPIO_BSRR_BS_0
108#define LL_GPIO_PIN_1 GPIO_BSRR_BS_1
109#define LL_GPIO_PIN_2 GPIO_BSRR_BS_2
110#define LL_GPIO_PIN_3 GPIO_BSRR_BS_3
111#define LL_GPIO_PIN_4 GPIO_BSRR_BS_4
112#define LL_GPIO_PIN_5 GPIO_BSRR_BS_5
113#define LL_GPIO_PIN_6 GPIO_BSRR_BS_6
114#define LL_GPIO_PIN_7 GPIO_BSRR_BS_7
115#define LL_GPIO_PIN_8 GPIO_BSRR_BS_8
116#define LL_GPIO_PIN_9 GPIO_BSRR_BS_9
117#define LL_GPIO_PIN_10 GPIO_BSRR_BS_10
118#define LL_GPIO_PIN_11 GPIO_BSRR_BS_11
119#define LL_GPIO_PIN_12 GPIO_BSRR_BS_12
120#define LL_GPIO_PIN_13 GPIO_BSRR_BS_13
121#define LL_GPIO_PIN_14 GPIO_BSRR_BS_14
122#define LL_GPIO_PIN_15 GPIO_BSRR_BS_15
123#define LL_GPIO_PIN_ALL (GPIO_BSRR_BS_0 | GPIO_BSRR_BS_1 | GPIO_BSRR_BS_2 | \
124 GPIO_BSRR_BS_3 | GPIO_BSRR_BS_4 | GPIO_BSRR_BS_5 | \
125 GPIO_BSRR_BS_6 | GPIO_BSRR_BS_7 | GPIO_BSRR_BS_8 | \
126 GPIO_BSRR_BS_9 | GPIO_BSRR_BS_10 | GPIO_BSRR_BS_11 | \
127 GPIO_BSRR_BS_12 | GPIO_BSRR_BS_13 | GPIO_BSRR_BS_14 | \
136#define LL_GPIO_MODE_INPUT (0x00000000U)
137#define LL_GPIO_MODE_OUTPUT GPIO_MODER_MODER0_0
138#define LL_GPIO_MODE_ALTERNATE GPIO_MODER_MODER0_1
139#define LL_GPIO_MODE_ANALOG GPIO_MODER_MODER0
147#define LL_GPIO_OUTPUT_PUSHPULL (0x00000000U)
148#define LL_GPIO_OUTPUT_OPENDRAIN GPIO_OTYPER_OT_0
156#define LL_GPIO_SPEED_FREQ_LOW (0x00000000U)
157#define LL_GPIO_SPEED_FREQ_MEDIUM GPIO_OSPEEDER_OSPEEDR0_0
158#define LL_GPIO_SPEED_FREQ_HIGH GPIO_OSPEEDER_OSPEEDR0
166#define LL_GPIO_PULL_NO (0x00000000U)
167#define LL_GPIO_PULL_UP GPIO_PUPDR_PUPDR0_0
168#define LL_GPIO_PULL_DOWN GPIO_PUPDR_PUPDR0_1
176#define LL_GPIO_AF_0 (0x0000000U)
177#define LL_GPIO_AF_1 (0x0000001U)
178#define LL_GPIO_AF_2 (0x0000002U)
179#define LL_GPIO_AF_3 (0x0000003U)
180#define LL_GPIO_AF_4 (0x0000004U)
181#define LL_GPIO_AF_5 (0x0000005U)
182#define LL_GPIO_AF_6 (0x0000006U)
183#define LL_GPIO_AF_7 (0x0000007U)
184#define LL_GPIO_AF_8 (0x0000008U)
185#define LL_GPIO_AF_9 (0x0000009U)
186#define LL_GPIO_AF_10 (0x000000AU)
187#define LL_GPIO_AF_11 (0x000000BU)
188#define LL_GPIO_AF_12 (0x000000CU)
189#define LL_GPIO_AF_13 (0x000000DU)
190#define LL_GPIO_AF_14 (0x000000EU)
191#define LL_GPIO_AF_15 (0x000000FU)
216#define LL_GPIO_WriteReg(__INSTANCE__, __REG__, __VALUE__) WRITE_REG(__INSTANCE__->__REG__, (__VALUE__))
224#define LL_GPIO_ReadReg(__INSTANCE__, __REG__) READ_REG(__INSTANCE__->__REG__)
799 return (
READ_BIT(GPIOx->
IDR, PinMask) == (PinMask));
851 return (
READ_BIT(GPIOx->
ODR, PinMask) == (PinMask));
939 WRITE_REG(GPIOx->
BSRR, ((odr & PinMask) << 16u) | (~odr & PinMask));
946#if defined(USE_FULL_LL_DRIVER)
953void LL_GPIO_StructInit(LL_GPIO_InitTypeDef *GPIO_InitStruct);
#define __STATIC_INLINE
Definition: cmsis_armcc.h:59
#define __IO
Definition: core_armv8mbl.h:196
#define WRITE_REG(REG, VAL)
Definition: stm32f3xx.h:198
#define POSITION_VAL(VAL)
Definition: stm32f3xx.h:204
#define MODIFY_REG(REG, CLEARMASK, SETMASK)
Definition: stm32f3xx.h:202
#define READ_BIT(REG, BIT)
Definition: stm32f3xx.h:194
#define READ_REG(REG)
Definition: stm32f3xx.h:200
ErrorStatus
Definition: stm32f3xx.h:177
#define GPIO_PUPDR_PUPDR0
Definition: stm32f303xe.h:10033
#define GPIO_MODER_MODER0
Definition: stm32f303xe.h:9851
#define GPIO_OSPEEDER_OSPEEDR0
Definition: stm32f303xe.h:9951
#define GPIO_AFRH_AFRH0
Definition: stm32f303xe.h:10264
#define GPIO_AFRL_AFRL0
Definition: stm32f303xe.h:10238
#define GPIO_LCKR_LCKK
Definition: stm32f303xe.h:10233
CMSIS STM32F3xx Device Peripheral Access Layer Header File.
General Purpose I/O.
Definition: stm32f303xe.h:475
__IO uint32_t OSPEEDR
Definition: stm32f303xe.h:478
__IO uint32_t AFR[2]
Definition: stm32f303xe.h:484
__IO uint32_t PUPDR
Definition: stm32f303xe.h:479
__IO uint32_t ODR
Definition: stm32f303xe.h:481
__IO uint32_t OTYPER
Definition: stm32f303xe.h:477
__IO uint32_t LCKR
Definition: stm32f303xe.h:483
__IO uint32_t BRR
Definition: stm32f303xe.h:485
__IO uint32_t MODER
Definition: stm32f303xe.h:476
__IO uint32_t BSRR
Definition: stm32f303xe.h:482
__IO uint32_t IDR
Definition: stm32f303xe.h:480