Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Fork of mbed-src by
Diff: targets/hal/TARGET_STM/TARGET_DISCO_F303VC/PinNames.h
- Revision:
- 403:91a4bea587f4
- Parent:
- 157:90e3acc479a2
diff -r 09075a3b15e3 -r 91a4bea587f4 targets/hal/TARGET_STM/TARGET_DISCO_F303VC/PinNames.h --- a/targets/hal/TARGET_STM/TARGET_DISCO_F303VC/PinNames.h Fri Nov 14 09:00:07 2014 +0000 +++ b/targets/hal/TARGET_STM/TARGET_DISCO_F303VC/PinNames.h Fri Nov 14 09:15:08 2014 +0000 @@ -36,21 +36,30 @@ extern "C" { #endif -// MODE (see GPIOMode_TypeDef structure) -// OTYPE (see GPIOOType_TypeDef structure) -// PUPD (see GPIOPuPd_TypeDef structure) -// AFNUM (see AF_mapping constant table, 0xFF is not used) -#define STM_PIN_DATA(MODE, OTYPE, PUPD, AFNUM) (((AFNUM)<<8)|((PUPD)<<4)|((OTYPE)<<2)|((MODE)<<0)) -#define STM_PIN_MODE(X) (((X)>>0) & 0x3) -#define STM_PIN_OTYPE(X) (((X)>>2) & 0x1) -#define STM_PIN_PUPD(X) (((X)>>4) & 0x3) -#define STM_PIN_AFNUM(X) (((X)>>8) & 0xF) +// See stm32f3xx_hal_gpio.h and stm32f3xx_hal_gpio_ex.h for values of MODE, PUPD and AFNUM +#define STM_PIN_DATA(MODE, PUPD, AFNUM) ((int)(((AFNUM) << 7) | ((PUPD) << 4) | ((MODE) << 0))) +#define STM_PIN_MODE(X) (((X) >> 0) & 0x0F) +#define STM_PIN_PUPD(X) (((X) >> 4) & 0x07) +#define STM_PIN_AFNUM(X) (((X) >> 7) & 0x0F) +#define STM_MODE_INPUT (0) +#define STM_MODE_OUTPUT_PP (1) +#define STM_MODE_OUTPUT_OD (2) +#define STM_MODE_AF_PP (3) +#define STM_MODE_AF_OD (4) +#define STM_MODE_ANALOG (5) +#define STM_MODE_IT_RISING (6) +#define STM_MODE_IT_FALLING (7) +#define STM_MODE_IT_RISING_FALLING (8) +#define STM_MODE_EVT_RISING (9) +#define STM_MODE_EVT_FALLING (10) +#define STM_MODE_EVT_RISING_FALLING (11) +#define STM_MODE_IT_EVT_RESET (12) // High nibble = port number (0=A, 1=B, 2=C, 3=D, 4=E, 5=F, 6=G, 7=H) // Low nibble = pin number #define STM_PORT(X) (((uint32_t)(X) >> 4) & 0xF) #define STM_PIN(X) ((uint32_t)(X) & 0xF) - + typedef enum { PIN_INPUT, PIN_OUTPUT @@ -159,56 +168,56 @@ PF_14 = 0x5E, PF_15 = 0x5F, - // Arduino connector namings - A0 = PA_0, - A1 = PA_1, - A2 = PA_4, - A3 = PB_0, - A4 = PC_1, - A5 = PC_0, - D0 = PA_3, - D1 = PA_2, - D2 = PA_10, - D3 = PB_3, - D4 = PB_5, - D5 = PB_4, - D6 = PB_10, - D7 = PA_8, - D8 = PA_9, - D9 = PC_7, - D10 = PB_6, - D11 = PA_7, - D12 = PA_6, - D13 = PA_5, - D14 = PB_9, - D15 = PB_8, + // Arduino connector namings + A0 = PA_0, + A1 = PA_1, + A2 = PA_4, + A3 = PB_0, + A4 = PC_1, + A5 = PC_0, + D0 = PA_3, + D1 = PA_2, + D2 = PA_10, + D3 = PB_3, + D4 = PB_5, + D5 = PB_4, + D6 = PB_10, + D7 = PA_8, + D8 = PA_9, + D9 = PC_7, + D10 = PB_6, + D11 = PB_15, + D12 = PB_14, + D13 = PB_13, + D14 = PB_9, + D15 = PB_8, - // Generic signals namings - LED1 = PE_9, - LED2 = PE_8, - LED3 = PE_9, - LED4 = PE_8, - LED5 = PE_10, - LED6 = PE_15, - LED7 = PE_11, - LED8 = PE_14, - LED9 = PE_12, - LED10 = PE_13, - USER_BUTTON = PA_0, - SERIAL_TX = PA_2, /* USART2 */ - SERIAL_RX = PA_3, - USBTX = PA_2, /* USART2 */ - USBRX = PA_3, - I2C_SCL = PB_8, /* I2C1 */ - I2C_SDA = PB_9, - SPI_MOSI = PB_5, /* SPI1 */ - SPI_MISO = PB_4, - SPI_SCK = PB_3, - SPI_CS = PA_15, - PWM_OUT = PB_1, - - // Not connected - NC = (int)0xFFFFFFFF + // Generic signals namings + LED1 = PE_9, + LED2 = PE_8, + LED3 = PE_9, + LED4 = PE_8, + LED5 = PE_10, + LED6 = PE_15, + LED7 = PE_11, + LED8 = PE_14, + LED9 = PE_12, + LED10 = PE_13, + USER_BUTTON = PA_0, + SERIAL_TX = PA_2, + SERIAL_RX = PA_3, + USBTX = PA_2, + USBRX = PA_3, + I2C_SCL = PB_8, + I2C_SDA = PB_9, + SPI_MOSI = PB_15, + SPI_MISO = PB_14, + SPI_SCK = PB_13, + SPI_CS = PB_6, + PWM_OUT = PB_4, + + // Not connected + NC = (int)0xFFFFFFFF } PinName; typedef enum {