STM32F3: standard pin names

pull/14480/head
jeromecoutant 2021-03-23 11:00:57 +01:00
parent 63ce075fa8
commit 25e85f9fcf
3 changed files with 496 additions and 584 deletions

View File

@ -1,31 +1,18 @@
/* mbed Microcontroller Library
*******************************************************************************
* Copyright (c) 2018, STMicroelectronics
* SPDX-License-Identifier: BSD-3-Clause
******************************************************************************
*
* Copyright (c) 2016-2021 STMicroelectronics.
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
* This software component is licensed by ST under BSD 3-Clause license,
* the "License"; You may not use this file except in compliance with the
* License. You may obtain a copy of the License at:
* opensource.org/licenses/BSD-3-Clause
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
* 3. Neither the name of STMicroelectronics nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
******************************************************************************
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
* DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
* SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
* OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*******************************************************************************
* Automatically generated from STM32CubeMX/db/mcu/STM32F303K(6-8)Tx.xml
*/
/* MBED TARGET LIST: NUCLEO_F303K8 */
@ -43,58 +30,55 @@ extern "C" {
typedef enum {
ALT0 = 0x100,
ALT1 = 0x200,
ALT2 = 0x300,
ALT3 = 0x400
} ALTx;
typedef enum {
PA_0 = 0x00,
PA_1 = 0x01,
PA_2 = 0x02,
PA_3 = 0x03,
PA_4 = 0x04,
PA_5 = 0x05,
PA_6 = 0x06,
PA_6_ALT0 = PA_6 | ALT0,
PA_7 = 0x07,
PA_7_ALT0 = PA_7 | ALT0,
PA_7_ALT1 = PA_7 | ALT1,
PA_8 = 0x08,
PA_9 = 0x09,
PA_10 = 0x0A,
PA_11 = 0x0B,
PA_11_ALT0 = PA_11 | ALT0,
PA_12 = 0x0C,
PA_12_ALT0 = PA_12 | ALT0,
PA_13 = 0x0D,
PA_14 = 0x0E,
PA_15 = 0x0F,
PA_0 = 0x00,
PA_1 = 0x01,
PA_2 = 0x02,
PA_3 = 0x03,
PA_4 = 0x04,
PA_5 = 0x05,
PA_6 = 0x06,
PA_6_ALT0 = PA_6 | ALT0, // same pin used for alternate HW
PA_7 = 0x07,
PA_7_ALT0 = PA_7 | ALT0, // same pin used for alternate HW
PA_7_ALT1 = PA_7 | ALT1, // same pin used for alternate HW
PA_8 = 0x08,
PA_9 = 0x09,
PA_10 = 0x0A,
PA_11 = 0x0B,
PA_11_ALT0 = PA_11 | ALT0, // same pin used for alternate HW
PA_12 = 0x0C,
PA_12_ALT0 = PA_12 | ALT0, // same pin used for alternate HW
PA_13 = 0x0D,
PA_14 = 0x0E,
PA_15 = 0x0F,
PB_0 = 0x10,
PB_0_ALT0 = PB_0 | ALT0, // same pin used for alternate HW
PB_1 = 0x11,
PB_1_ALT0 = PB_1 | ALT0, // same pin used for alternate HW
PB_3 = 0x13,
PB_4 = 0x14,
PB_4_ALT0 = PB_4 | ALT0, // same pin used for alternate HW
PB_5 = 0x15,
PB_5_ALT0 = PB_5 | ALT0, // same pin used for alternate HW
PB_6 = 0x16,
PB_7 = 0x17,
PB_7_ALT0 = PB_7 | ALT0, // same pin used for alternate HW
PF_0 = 0x50,
PF_1 = 0x51,
PB_0 = 0x10,
PB_0_ALT0 = PB_0 | ALT0,
PB_1 = 0x11,
PB_1_ALT0 = PB_1 | ALT0,
PB_3 = 0x13,
PB_4 = 0x14,
PB_4_ALT0 = PB_4 | ALT0,
PB_5 = 0x15,
PB_5_ALT0 = PB_5 | ALT0,
PB_6 = 0x16,
PB_7 = 0x17,
PB_7_ALT0 = PB_7 | ALT0,
/**** ADC internal channels ****/
PF_0 = 0x50,
PF_1 = 0x51,
ADC_TEMP = 0xF0, // Internal pin virtual value
ADC_VREF1 = 0xF1, // Internal pin virtual value
ADC_VREF2 = 0xF2, // Internal pin virtual value
ADC_VREF = ADC_VREF1, // Internal pin virtual value
ADC_VBAT = 0xF3, // Internal pin virtual value
ADC_VOPAMP2 = 0xF4, // Internal pin virtual value
// ADC internal channels
ADC_TEMP = 0xF0,
ADC_VREF1 = 0xF1,
ADC_VREF2 = 0xF2,
ADC_VREF = ADC_VREF1,
ADC_VBAT = 0xF3,
ADC_VOPAMP2 = 0xF4,
// Arduino connector namings
// Arduino Nano pins
A0 = PA_0,
A1 = PA_1,
A2 = PA_3,
@ -103,6 +87,7 @@ typedef enum {
A5 = PA_6,
A6 = PA_7,
A7 = PA_2,
D0 = PA_10,
D1 = PA_9,
D2 = PA_12,
@ -120,36 +105,16 @@ typedef enum {
// STDIO for console print
#ifdef MBED_CONF_TARGET_STDIO_UART_TX
STDIO_UART_TX = MBED_CONF_TARGET_STDIO_UART_TX,
CONSOLE_TX = MBED_CONF_TARGET_STDIO_UART_TX,
#else
STDIO_UART_TX = PA_2,
CONSOLE_TX = PA_2,
#endif
#ifdef MBED_CONF_TARGET_STDIO_UART_RX
STDIO_UART_RX = MBED_CONF_TARGET_STDIO_UART_RX,
CONSOLE_RX = MBED_CONF_TARGET_STDIO_UART_RX,
#else
STDIO_UART_RX = PA_15,
CONSOLE_RX = PA_15,
#endif
// Generic signals namings
LED1 = PB_3,
LED2 = PB_3,
LED3 = PB_3,
LED4 = PB_3,
USER_BUTTON = 0x20, // no user button on the board
// Standardized button names
BUTTON1 = USER_BUTTON,
SERIAL_TX = STDIO_UART_TX,
SERIAL_RX = STDIO_UART_RX,
CONSOLE_TX = STDIO_UART_TX,
CONSOLE_RX = STDIO_UART_RX,
I2C_SCL = PB_6,
I2C_SDA = PB_7,
SPI_MOSI = PB_5,
SPI_MISO = PB_4,
SPI_SCK = PB_3,
SPI_CS = PA_11,
PWM_OUT = PA_8,
/**** OSCILLATOR pins ****/
RCC_OSC_IN = PF_0,
RCC_OSC_OUT = PF_1,
@ -166,6 +131,9 @@ typedef enum {
NC = (int)0xFFFFFFFF
} PinName;
// Standardized LED and button names
#define LED1 PB_3
#ifdef __cplusplus
}
#endif

View File

@ -1,31 +1,18 @@
/* mbed Microcontroller Library
*******************************************************************************
* Copyright (c) 2018, STMicroelectronics
* SPDX-License-Identifier: BSD-3-Clause
******************************************************************************
*
* Copyright (c) 2016-2021 STMicroelectronics.
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
* This software component is licensed by ST under BSD 3-Clause license,
* the "License"; You may not use this file except in compliance with the
* License. You may obtain a copy of the License at:
* opensource.org/licenses/BSD-3-Clause
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
* 3. Neither the name of STMicroelectronics nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
******************************************************************************
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
* DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
* SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
* OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*******************************************************************************
* Automatically generated from STM32CubeMX/db/mcu/STM32F303R(D-E)Tx.xml
*/
/* MBED TARGET LIST: NUCLEO_F303RE */
@ -47,177 +34,157 @@ typedef enum {
ALT0 = 0x100,
ALT1 = 0x200,
ALT2 = 0x300,
ALT3 = 0x400
} ALTx;
typedef enum {
PA_0 = 0x00,
PA_1 = 0x01,
PA_2 = 0x02,
PA_3 = 0x03,
PA_4 = 0x04,
PA_4_ALT0 = PA_4 | ALT0,
PA_5 = 0x05,
PA_6 = 0x06,
PA_6_ALT0 = PA_6 | ALT0,
PA_7 = 0x07,
PA_7_ALT0 = PA_7 | ALT0,
PA_7_ALT1 = PA_7 | ALT1,
PA_7_ALT2 = PA_7 | ALT2,
PA_8 = 0x08,
PA_9 = 0x09,
PA_10 = 0x0A,
PA_11 = 0x0B,
PA_11_ALT0 = PA_11 | ALT0,
PA_11_ALT1 = PA_11 | ALT1,
PA_12 = 0x0C,
PA_12_ALT0 = PA_12 | ALT0,
PA_12_ALT1 = PA_12 | ALT1,
PA_13 = 0x0D,
PA_13_ALT0 = PA_13 | ALT0,
PA_14 = 0x0E,
PA_15 = 0x0F,
PA_15_ALT0 = PA_15 | ALT0,
PB_0 = 0x10,
PB_0_ALT0 = PB_0 | ALT0,
PB_0_ALT1 = PB_0 | ALT1,
PB_1 = 0x11,
PB_1_ALT0 = PB_1 | ALT0,
PB_1_ALT1 = PB_1 | ALT1,
PB_2 = 0x12,
PB_3 = 0x13,
PB_3_ALT0 = PB_3 | ALT0,
PB_4 = 0x14,
PB_4_ALT0 = PB_4 | ALT0,
PB_4_ALT1 = PB_4 | ALT1,
PB_5 = 0x15,
PB_5_ALT0 = PB_5 | ALT0,
PB_5_ALT1 = PB_5 | ALT1,
PB_6 = 0x16,
PB_6_ALT0 = PB_6 | ALT0,
PB_6_ALT1 = PB_6 | ALT1,
PB_7 = 0x17,
PB_7_ALT0 = PB_7 | ALT0,
PB_7_ALT1 = PB_7 | ALT1,
PB_8 = 0x18,
PB_8_ALT0 = PB_8 | ALT0,
PB_8_ALT1 = PB_8 | ALT1,
PB_9 = 0x19,
PB_9_ALT0 = PB_9 | ALT0,
PB_9_ALT1 = PB_9 | ALT1,
PB_10 = 0x1A,
PB_11 = 0x1B,
PB_11_ALT0 = PB_11 | ALT0,
PB_12 = 0x1C,
PB_13 = 0x1D,
PB_14 = 0x1E,
PB_14_ALT0 = PB_14 | ALT0,
PB_15 = 0x1F,
PB_15_ALT0 = PB_15 | ALT0,
PB_15_ALT1 = PB_15 | ALT1,
PA_0 = 0x00,
PA_1 = 0x01,
PA_2 = 0x02,
PA_3 = 0x03,
PA_4 = 0x04,
PA_4_ALT0 = PA_4 | ALT0, // same pin used for alternate HW
PA_5 = 0x05,
PA_6 = 0x06,
PA_6_ALT0 = PA_6 | ALT0, // same pin used for alternate HW
PA_7 = 0x07,
PA_7_ALT0 = PA_7 | ALT0, // same pin used for alternate HW
PA_7_ALT1 = PA_7 | ALT1, // same pin used for alternate HW
PA_7_ALT2 = PA_7 | ALT2, // same pin used for alternate HW
PA_8 = 0x08,
PA_9 = 0x09,
PA_10 = 0x0A,
PA_11 = 0x0B,
PA_11_ALT0 = PA_11 | ALT0, // same pin used for alternate HW
PA_11_ALT1 = PA_11 | ALT1, // same pin used for alternate HW
PA_12 = 0x0C,
PA_12_ALT0 = PA_12 | ALT0, // same pin used for alternate HW
PA_12_ALT1 = PA_12 | ALT1, // same pin used for alternate HW
PA_13 = 0x0D,
PA_13_ALT0 = PA_13 | ALT0, // same pin used for alternate HW
PA_14 = 0x0E,
PA_15 = 0x0F,
PA_15_ALT0 = PA_15 | ALT0, // same pin used for alternate HW
PB_0 = 0x10,
PB_0_ALT0 = PB_0 | ALT0, // same pin used for alternate HW
PB_0_ALT1 = PB_0 | ALT1, // same pin used for alternate HW
PB_1 = 0x11,
PB_1_ALT0 = PB_1 | ALT0, // same pin used for alternate HW
PB_1_ALT1 = PB_1 | ALT1, // same pin used for alternate HW
PB_2 = 0x12,
PB_3 = 0x13,
PB_3_ALT0 = PB_3 | ALT0, // same pin used for alternate HW
PB_4 = 0x14,
PB_4_ALT0 = PB_4 | ALT0, // same pin used for alternate HW
PB_4_ALT1 = PB_4 | ALT1, // same pin used for alternate HW
PB_5 = 0x15,
PB_5_ALT0 = PB_5 | ALT0, // same pin used for alternate HW
PB_5_ALT1 = PB_5 | ALT1, // same pin used for alternate HW
PB_6 = 0x16,
PB_6_ALT0 = PB_6 | ALT0, // same pin used for alternate HW
PB_6_ALT1 = PB_6 | ALT1, // same pin used for alternate HW
PB_7 = 0x17,
PB_7_ALT0 = PB_7 | ALT0, // same pin used for alternate HW
PB_7_ALT1 = PB_7 | ALT1, // same pin used for alternate HW
PB_8 = 0x18,
PB_8_ALT0 = PB_8 | ALT0, // same pin used for alternate HW
PB_8_ALT1 = PB_8 | ALT1, // same pin used for alternate HW
PB_9 = 0x19,
PB_9_ALT0 = PB_9 | ALT0, // same pin used for alternate HW
PB_9_ALT1 = PB_9 | ALT1, // same pin used for alternate HW
PB_10 = 0x1A,
PB_11 = 0x1B,
PB_11_ALT0 = PB_11 | ALT0, // same pin used for alternate HW
PB_12 = 0x1C,
PB_13 = 0x1D,
PB_14 = 0x1E,
PB_14_ALT0 = PB_14 | ALT0, // same pin used for alternate HW
PB_15 = 0x1F,
PB_15_ALT0 = PB_15 | ALT0, // same pin used for alternate HW
PB_15_ALT1 = PB_15 | ALT1, // same pin used for alternate HW
PC_0 = 0x20,
PC_0_ALT0 = PC_0 | ALT0, // same pin used for alternate HW
PC_1 = 0x21,
PC_1_ALT0 = PC_1 | ALT0, // same pin used for alternate HW
PC_2 = 0x22,
PC_2_ALT0 = PC_2 | ALT0, // same pin used for alternate HW
PC_3 = 0x23,
PC_3_ALT0 = PC_3 | ALT0, // same pin used for alternate HW
PC_4 = 0x24,
PC_5 = 0x25,
PC_6 = 0x26,
PC_6_ALT0 = PC_6 | ALT0, // same pin used for alternate HW
PC_7 = 0x27,
PC_7_ALT0 = PC_7 | ALT0, // same pin used for alternate HW
PC_8 = 0x28,
PC_8_ALT0 = PC_8 | ALT0, // same pin used for alternate HW
PC_9 = 0x29,
PC_9_ALT0 = PC_9 | ALT0, // same pin used for alternate HW
PC_10 = 0x2A,
PC_10_ALT0 = PC_10 | ALT0, // same pin used for alternate HW
PC_11 = 0x2B,
PC_11_ALT0 = PC_11 | ALT0, // same pin used for alternate HW
PC_12 = 0x2C,
PC_13 = 0x2D,
PC_14 = 0x2E,
PC_15 = 0x2F,
PD_2 = 0x32,
PF_0 = 0x50,
PF_1 = 0x51,
PC_0 = 0x20,
PC_0_ALT0 = PC_0 | ALT0,
PC_1 = 0x21,
PC_1_ALT0 = PC_1 | ALT0,
PC_2 = 0x22,
PC_2_ALT0 = PC_2 | ALT0,
PC_3 = 0x23,
PC_3_ALT0 = PC_3 | ALT0,
PC_4 = 0x24,
PC_5 = 0x25,
PC_6 = 0x26,
PC_6_ALT0 = PC_6 | ALT0,
PC_7 = 0x27,
PC_7_ALT0 = PC_7 | ALT0,
PC_8 = 0x28,
PC_8_ALT0 = PC_8 | ALT0,
PC_9 = 0x29,
PC_9_ALT0 = PC_9 | ALT0,
PC_10 = 0x2A,
PC_10_ALT0 = PC_10 | ALT0,
PC_11 = 0x2B,
PC_11_ALT0 = PC_11 | ALT0,
PC_12 = 0x2C,
PC_13 = 0x2D,
PC_14 = 0x2E,
PC_15 = 0x2F,
/**** ADC internal channels ****/
PD_2 = 0x32,
ADC_TEMP = 0xF0, // Internal pin virtual value
ADC_VREF1 = 0xF1, // Internal pin virtual value
ADC_VREF2 = 0xF2, // Internal pin virtual value
ADC_VREF3 = 0xF3, // Internal pin virtual value
ADC_VREF4 = 0xF4, // Internal pin virtual value
ADC_VREF = ADC_VREF1, // Internal pin virtual value
ADC_VBAT = 0xF5, // Internal pin virtual value
ADC_VOPAMP1 = 0xF6, // Internal pin virtual value
ADC_VOPAMP2 = 0xF7, // Internal pin virtual value
ADC_VOPAMP3 = 0xF8, // Internal pin virtual value
ADC_VOPAMP4 = 0xF9, // Internal pin virtual value
PF_0 = 0x50,
PF_1 = 0x51,
#ifdef TARGET_FF_ARDUINO_UNO
// Arduino Uno (Rev3) pins
ARDUINO_UNO_A0 = PA_0,
ARDUINO_UNO_A1 = PA_1,
ARDUINO_UNO_A2 = PA_4,
ARDUINO_UNO_A3 = PB_0,
ARDUINO_UNO_A4 = PC_1,
ARDUINO_UNO_A5 = PC_0,
// ADC internal channels
ADC_TEMP = 0xF0,
ADC_VREF1 = 0xF1,
ADC_VREF2 = 0xF2,
ADC_VREF3 = 0xF3,
ADC_VREF4 = 0xF4,
ADC_VREF = ADC_VREF1,
ADC_VBAT = 0xF5,
ADC_VOPAMP1 = 0xF6,
ADC_VOPAMP2 = 0xF7,
ADC_VOPAMP3 = 0xF8,
ADC_VOPAMP4 = 0xF9,
// 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_UNO_D0 = PA_3,
ARDUINO_UNO_D1 = PA_2,
ARDUINO_UNO_D2 = PA_10,
ARDUINO_UNO_D3 = PB_3,
ARDUINO_UNO_D4 = PB_5,
ARDUINO_UNO_D5 = PB_4,
ARDUINO_UNO_D6 = PB_10,
ARDUINO_UNO_D7 = PA_8,
ARDUINO_UNO_D8 = PA_9,
ARDUINO_UNO_D9 = PC_7,
ARDUINO_UNO_D10 = PB_6,
ARDUINO_UNO_D11 = PA_7,
ARDUINO_UNO_D12 = PA_6,
ARDUINO_UNO_D13 = PA_5,
ARDUINO_UNO_D14 = PB_9,
ARDUINO_UNO_D15 = PB_8,
#endif
// STDIO for console print
#ifdef MBED_CONF_TARGET_STDIO_UART_TX
STDIO_UART_TX = MBED_CONF_TARGET_STDIO_UART_TX,
CONSOLE_TX = MBED_CONF_TARGET_STDIO_UART_TX,
#else
STDIO_UART_TX = PA_2,
CONSOLE_TX = PA_2,
#endif
#ifdef MBED_CONF_TARGET_STDIO_UART_RX
STDIO_UART_RX = MBED_CONF_TARGET_STDIO_UART_RX,
CONSOLE_RX = MBED_CONF_TARGET_STDIO_UART_RX,
#else
STDIO_UART_RX = PA_3,
CONSOLE_RX = PA_3,
#endif
// Generic signals namings
LED1 = PA_5,
LED2 = PA_5,
LED3 = PA_5,
LED4 = PA_5,
USER_BUTTON = PC_13,
// Standardized button names
BUTTON1 = USER_BUTTON,
SERIAL_TX = STDIO_UART_TX,
SERIAL_RX = STDIO_UART_RX,
CONSOLE_TX = STDIO_UART_TX,
CONSOLE_RX = STDIO_UART_RX,
I2C_SCL = PB_8,
I2C_SDA = PB_9,
SPI_MOSI = PA_7,
SPI_MISO = PA_6,
SPI_SCK = PA_5,
SPI_CS = PB_6,
PWM_OUT = PB_4,
/**** USB pins ****/
USB_DM = PA_11,
USB_DP = PA_12,
@ -241,6 +208,10 @@ typedef enum {
NC = (int)0xFFFFFFFF
} PinName;
// Standardized LED and button names
#define LED1 PA_5 // LD2 [Green Led]
#define BUTTON1 PC_13 // B1 [Blue PushButton]
#ifdef __cplusplus
}
#endif

View File

@ -1,31 +1,18 @@
/* mbed Microcontroller Library
*******************************************************************************
* Copyright (c) 2018, STMicroelectronics
* SPDX-License-Identifier: BSD-3-Clause
******************************************************************************
*
* Copyright (c) 2016-2021 STMicroelectronics.
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
* This software component is licensed by ST under BSD 3-Clause license,
* the "License"; You may not use this file except in compliance with the
* License. You may obtain a copy of the License at:
* opensource.org/licenses/BSD-3-Clause
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
* 3. Neither the name of STMicroelectronics nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
******************************************************************************
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
* DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
* SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
* OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*******************************************************************************
* Automatically generated from STM32CubeMX/db/mcu/STM32F303Z(D-E)Tx.xml
*/
/* MBED TARGET LIST: NUCLEO_F303ZE */
@ -44,315 +31,295 @@ typedef enum {
ALT0 = 0x100,
ALT1 = 0x200,
ALT2 = 0x300,
ALT3 = 0x400
} ALTx;
typedef enum {
PA_0 = 0x00,
PA_1 = 0x01,
PA_2 = 0x02,
PA_3 = 0x03,
PA_3_ALT0 = PA_3 | ALT0,
PA_4 = 0x04,
PA_4_ALT0 = PA_4 | ALT0,
PA_5 = 0x05,
PA_6 = 0x06,
PA_6_ALT0 = PA_6 | ALT0,
PA_7 = 0x07,
PA_7_ALT0 = PA_7 | ALT0,
PA_7_ALT1 = PA_7 | ALT1,
PA_7_ALT2 = PA_7 | ALT2,
PA_8 = 0x08,
PA_9 = 0x09,
PA_10 = 0x0A,
PA_11 = 0x0B,
PA_11_ALT0 = PA_11 | ALT0,
PA_11_ALT1 = PA_11 | ALT1,
PA_12 = 0x0C,
PA_12_ALT0 = PA_12 | ALT0,
PA_12_ALT1 = PA_12 | ALT1,
PA_13 = 0x0D,
PA_13_ALT0 = PA_13 | ALT0,
PA_14 = 0x0E,
PA_15 = 0x0F,
PA_15_ALT0 = PA_15 | ALT0,
PA_0 = 0x00,
PA_1 = 0x01,
PA_2 = 0x02,
PA_3 = 0x03,
PA_4 = 0x04,
PA_4_ALT0 = PA_4 | ALT0, // same pin used for alternate HW
PA_5 = 0x05,
PA_6 = 0x06,
PA_6_ALT0 = PA_6 | ALT0, // same pin used for alternate HW
PA_7 = 0x07,
PA_7_ALT0 = PA_7 | ALT0, // same pin used for alternate HW
PA_7_ALT1 = PA_7 | ALT1, // same pin used for alternate HW
PA_7_ALT2 = PA_7 | ALT2, // same pin used for alternate HW
PA_8 = 0x08,
PA_9 = 0x09,
PA_10 = 0x0A,
PA_11 = 0x0B,
PA_11_ALT0 = PA_11 | ALT0, // same pin used for alternate HW
PA_11_ALT1 = PA_11 | ALT1, // same pin used for alternate HW
PA_12 = 0x0C,
PA_12_ALT0 = PA_12 | ALT0, // same pin used for alternate HW
PA_12_ALT1 = PA_12 | ALT1, // same pin used for alternate HW
PA_13 = 0x0D,
PA_13_ALT0 = PA_13 | ALT0, // same pin used for alternate HW
PA_14 = 0x0E,
PA_15 = 0x0F,
PA_15_ALT0 = PA_15 | ALT0, // same pin used for alternate HW
PB_0 = 0x10,
PB_0_ALT0 = PB_0 | ALT0, // same pin used for alternate HW
PB_0_ALT1 = PB_0 | ALT1, // same pin used for alternate HW
PB_1 = 0x11,
PB_1_ALT0 = PB_1 | ALT0, // same pin used for alternate HW
PB_1_ALT1 = PB_1 | ALT1, // same pin used for alternate HW
PB_2 = 0x12,
PB_3 = 0x13,
PB_3_ALT0 = PB_3 | ALT0, // same pin used for alternate HW
PB_4 = 0x14,
PB_4_ALT0 = PB_4 | ALT0, // same pin used for alternate HW
PB_4_ALT1 = PB_4 | ALT1, // same pin used for alternate HW
PB_5 = 0x15,
PB_5_ALT0 = PB_5 | ALT0, // same pin used for alternate HW
PB_5_ALT1 = PB_5 | ALT1, // same pin used for alternate HW
PB_6 = 0x16,
PB_6_ALT0 = PB_6 | ALT0, // same pin used for alternate HW
PB_6_ALT1 = PB_6 | ALT1, // same pin used for alternate HW
PB_7 = 0x17,
PB_7_ALT0 = PB_7 | ALT0, // same pin used for alternate HW
PB_7_ALT1 = PB_7 | ALT1, // same pin used for alternate HW
PB_8 = 0x18,
PB_8_ALT0 = PB_8 | ALT0, // same pin used for alternate HW
PB_8_ALT1 = PB_8 | ALT1, // same pin used for alternate HW
PB_9 = 0x19,
PB_9_ALT0 = PB_9 | ALT0, // same pin used for alternate HW
PB_9_ALT1 = PB_9 | ALT1, // same pin used for alternate HW
PB_10 = 0x1A,
PB_11 = 0x1B,
PB_11_ALT0 = PB_11 | ALT0, // same pin used for alternate HW
PB_12 = 0x1C,
PB_13 = 0x1D,
PB_14 = 0x1E,
PB_14_ALT0 = PB_14 | ALT0, // same pin used for alternate HW
PB_15 = 0x1F,
PB_15_ALT0 = PB_15 | ALT0, // same pin used for alternate HW
PB_15_ALT1 = PB_15 | ALT1, // same pin used for alternate HW
PC_0 = 0x20,
PC_0_ALT0 = PC_0 | ALT0, // same pin used for alternate HW
PC_1 = 0x21,
PC_1_ALT0 = PC_1 | ALT0, // same pin used for alternate HW
PC_2 = 0x22,
PC_2_ALT0 = PC_2 | ALT0, // same pin used for alternate HW
PC_3 = 0x23,
PC_3_ALT0 = PC_3 | ALT0, // same pin used for alternate HW
PC_4 = 0x24,
PC_5 = 0x25,
PC_6 = 0x26,
PC_6_ALT0 = PC_6 | ALT0, // same pin used for alternate HW
PC_7 = 0x27,
PC_7_ALT0 = PC_7 | ALT0, // same pin used for alternate HW
PC_8 = 0x28,
PC_8_ALT0 = PC_8 | ALT0, // same pin used for alternate HW
PC_9 = 0x29,
PC_9_ALT0 = PC_9 | ALT0, // same pin used for alternate HW
PC_10 = 0x2A,
PC_10_ALT0 = PC_10 | ALT0, // same pin used for alternate HW
PC_11 = 0x2B,
PC_11_ALT0 = PC_11 | ALT0, // same pin used for alternate HW
PC_12 = 0x2C,
PC_13 = 0x2D,
PC_14 = 0x2E,
PC_15 = 0x2F,
PD_0 = 0x30,
PD_1 = 0x31,
PD_2 = 0x32,
PD_3 = 0x33,
PD_4 = 0x34,
PD_5 = 0x35,
PD_6 = 0x36,
PD_7 = 0x37,
PD_8 = 0x38,
PD_9 = 0x39,
PD_10 = 0x3A,
PD_10_ALT0 = PD_10 | ALT0, // same pin used for alternate HW
PD_11 = 0x3B,
PD_11_ALT0 = PD_11 | ALT0, // same pin used for alternate HW
PD_12 = 0x3C,
PD_12_ALT0 = PD_12 | ALT0, // same pin used for alternate HW
PD_13 = 0x3D,
PD_13_ALT0 = PD_13 | ALT0, // same pin used for alternate HW
PD_14 = 0x3E,
PD_14_ALT0 = PD_14 | ALT0, // same pin used for alternate HW
PD_15 = 0x3F,
PE_0 = 0x40,
PE_1 = 0x41,
PE_1_ALT0 = PE_1 | ALT0, // same pin used for alternate HW
PE_2 = 0x42,
PE_2_ALT0 = PE_2 | ALT0, // same pin used for alternate HW
PE_3 = 0x43,
PE_3_ALT0 = PE_3 | ALT0, // same pin used for alternate HW
PE_4 = 0x44,
PE_4_ALT0 = PE_4 | ALT0, // same pin used for alternate HW
PE_5 = 0x45,
PE_5_ALT0 = PE_5 | ALT0, // same pin used for alternate HW
PE_6 = 0x46,
PE_7 = 0x47,
PE_8 = 0x48,
PE_8_ALT0 = PE_8 | ALT0, // same pin used for alternate HW
PE_9 = 0x49,
PE_10 = 0x4A,
PE_11 = 0x4B,
PE_12 = 0x4C,
PE_13 = 0x4D,
PE_14 = 0x4E,
PE_15 = 0x4F,
PF_0 = 0x50,
PF_1 = 0x51,
PF_2 = 0x52,
PF_2_ALT0 = PF_2 | ALT0, // same pin used for alternate HW
PF_3 = 0x53,
PF_4 = 0x54,
PF_5 = 0x55,
PF_6 = 0x56,
PF_7 = 0x57,
PF_8 = 0x58,
PF_9 = 0x59,
PF_10 = 0x5A,
PF_11 = 0x5B,
PF_12 = 0x5C,
PF_13 = 0x5D,
PF_14 = 0x5E,
PF_15 = 0x5F,
PG_0 = 0x60,
PG_1 = 0x61,
PG_2 = 0x62,
PG_3 = 0x63,
PG_4 = 0x64,
PG_5 = 0x65,
PG_6 = 0x66,
PG_7 = 0x67,
PG_8 = 0x68,
PG_9 = 0x69,
PG_10 = 0x6A,
PG_11 = 0x6B,
PG_12 = 0x6C,
PG_13 = 0x6D,
PG_14 = 0x6E,
PG_15 = 0x6F,
PH_0 = 0x70,
PH_1 = 0x71,
PH_2 = 0x72,
PB_0 = 0x10,
PB_0_ALT0 = PB_0 | ALT0,
PB_0_ALT1 = PB_0 | ALT1,
PB_1 = 0x11,
PB_1_ALT0 = PB_1 | ALT0,
PB_1_ALT1 = PB_1 | ALT1,
PB_2 = 0x12,
PB_3 = 0x13,
PB_3_ALT0 = PB_3 | ALT0,
PB_4 = 0x14,
PB_4_ALT0 = PB_4 | ALT0,
PB_4_ALT1 = PB_4 | ALT1,
PB_5 = 0x15,
PB_5_ALT0 = PB_5 | ALT0,
PB_5_ALT1 = PB_5 | ALT1,
PB_6 = 0x16,
PB_6_ALT0 = PB_6 | ALT0,
PB_6_ALT1 = PB_6 | ALT1,
PB_7 = 0x17,
PB_7_ALT0 = PB_7 | ALT0,
PB_7_ALT1 = PB_7 | ALT1,
PB_8 = 0x18,
PB_8_ALT0 = PB_8 | ALT0,
PB_8_ALT1 = PB_8 | ALT1,
PB_9 = 0x19,
PB_9_ALT0 = PB_9 | ALT0,
PB_9_ALT1 = PB_9 | ALT1,
PB_10 = 0x1A,
PB_11 = 0x1B,
PB_11_ALT0 = PB_11 | ALT0,
PB_12 = 0x1C,
PB_13 = 0x1D,
PB_14 = 0x1E,
PB_14_ALT0 = PB_14 | ALT0,
PB_15 = 0x1F,
PB_15_ALT0 = PB_15 | ALT0,
PB_15_ALT1 = PB_15 | ALT1,
/**** ADC internal channels ****/
PC_0 = 0x20,
PC_0_ALT0 = PC_0 | ALT0,
PC_1 = 0x21,
PC_1_ALT0 = PC_1 | ALT0,
PC_2 = 0x22,
PC_2_ALT0 = PC_2 | ALT0,
PC_3 = 0x23,
PC_3_ALT0 = PC_3 | ALT0,
PC_4 = 0x24,
PC_5 = 0x25,
PC_6 = 0x26,
PC_6_ALT0 = PC_6 | ALT0,
PC_7 = 0x27,
PC_7_ALT0 = PC_7 | ALT0,
PC_8 = 0x28,
PC_8_ALT0 = PC_8 | ALT0,
PC_9 = 0x29,
PC_9_ALT0 = PC_9 | ALT0,
PC_10 = 0x2A,
PC_11 = 0x2B,
PC_12 = 0x2C,
PC_13 = 0x2D,
PC_14 = 0x2E,
PC_15 = 0x2F,
ADC_TEMP = 0xF0, // Internal pin virtual value
ADC_VREF1 = 0xF1, // Internal pin virtual value
ADC_VREF2 = 0xF2, // Internal pin virtual value
ADC_VREF3 = 0xF3, // Internal pin virtual value
ADC_VREF4 = 0xF4, // Internal pin virtual value
ADC_VREF = ADC_VREF1, // Internal pin virtual value
ADC_VBAT = 0xF5, // Internal pin virtual value
ADC_VOPAMP1 = 0xF6, // Internal pin virtual value
ADC_VOPAMP2 = 0xF7, // Internal pin virtual value
ADC_VOPAMP3 = 0xF8, // Internal pin virtual value
ADC_VOPAMP4 = 0xF9, // Internal pin virtual value
PD_0 = 0x30,
PD_1 = 0x31,
PD_2 = 0x32,
PD_3 = 0x33,
PD_4 = 0x34,
PD_5 = 0x35,
PD_6 = 0x36,
PD_7 = 0x37,
PD_8 = 0x38,
PD_9 = 0x39,
PD_10 = 0x3A,
PD_10_ALT0 = PD_10 | ALT0,
PD_11 = 0x3B,
PD_11_ALT0 = PD_11 | ALT0,
PD_12 = 0x3C,
PD_12_ALT0 = PD_12 | ALT0,
PD_13 = 0x3D,
PD_13_ALT0 = PD_13 | ALT0,
PD_14 = 0x3E,
PD_14_ALT0 = PD_14 | ALT0,
PD_15 = 0x3F,
#ifdef TARGET_FF_ARDUINO_UNO
// Arduino Uno (Rev3) pins
ARDUINO_UNO_A0 = PA_3,
ARDUINO_UNO_A1 = PC_0,
ARDUINO_UNO_A2 = PC_3,
ARDUINO_UNO_A3 = PD_11,
ARDUINO_UNO_A4 = PD_12,
ARDUINO_UNO_A5 = PD_13,
PE_0 = 0x40,
PE_1 = 0x41,
PE_1_ALT0 = PE_1 | ALT0,
PE_2 = 0x42,
PE_2_ALT0 = PE_2 | ALT0,
PE_3 = 0x43,
PE_3_ALT0 = PE_3 | ALT0,
PE_4 = 0x44,
PE_4_ALT0 = PE_4 | ALT0,
PE_5 = 0x45,
PE_5_ALT0 = PE_5 | ALT0,
PE_6 = 0x46,
PE_7 = 0x47,
PE_8 = 0x48,
PE_8_ALT0 = PE_8 | ALT0,
PE_9 = 0x49,
PE_10 = 0x4A,
PE_11 = 0x4B,
PE_12 = 0x4C,
PE_13 = 0x4D,
PE_14 = 0x4E,
PE_15 = 0x4F,
ARDUINO_UNO_D0 = PC_5,
ARDUINO_UNO_D1 = PC_4,
ARDUINO_UNO_D2 = PF_15,
ARDUINO_UNO_D3 = PE_13,
ARDUINO_UNO_D4 = PF_14,
ARDUINO_UNO_D5 = PE_11,
ARDUINO_UNO_D6 = PE_9,
ARDUINO_UNO_D7 = PF_13,
ARDUINO_UNO_D8 = PF_12,
ARDUINO_UNO_D9 = PD_15,
ARDUINO_UNO_D10 = PD_14,
ARDUINO_UNO_D11 = PA_7,
ARDUINO_UNO_D12 = PA_6,
ARDUINO_UNO_D13 = PA_5,
ARDUINO_UNO_D14 = PB_9,
ARDUINO_UNO_D15 = PB_8,
#endif
PF_0 = 0x50,
PF_1 = 0x51,
PF_2 = 0x52,
PF_2_ALT0 = PF_2 | ALT0,
PF_3 = 0x53,
PF_4 = 0x54,
PF_5 = 0x55,
PF_6 = 0x56,
PF_7 = 0x57,
PF_8 = 0x58,
PF_9 = 0x59,
PF_10 = 0x5A,
PF_11 = 0x5B,
PF_12 = 0x5C,
PF_13 = 0x5D,
PF_14 = 0x5E,
PF_15 = 0x5F,
// Arduino extension pins
A6 = PB_1,
A7 = PC_2,
A8 = PF_4,
PG_0 = 0x60,
PG_1 = 0x61,
PG_2 = 0x62,
PG_3 = 0x63,
PG_4 = 0x64,
PG_5 = 0x65,
PG_6 = 0x66,
PG_7 = 0x67,
PG_8 = 0x68,
PG_9 = 0x69,
PG_10 = 0x6A,
PG_11 = 0x6B,
PG_12 = 0x6C,
PG_13 = 0x6D,
PG_14 = 0x6E,
PG_15 = 0x6F,
PH_0 = 0x70,
PH_1 = 0x71,
PH_2 = 0x72,
// ADC internal channels
ADC_TEMP = 0xF0,
ADC_VREF1 = 0xF1,
ADC_VREF2 = 0xF2,
ADC_VREF3 = 0xF3,
ADC_VREF4 = 0xF4,
ADC_VREF = ADC_VREF1,
ADC_VBAT = 0xF5,
ADC_VOPAMP1 = 0xF6,
ADC_VOPAMP2 = 0xF7,
ADC_VOPAMP3 = 0xF8,
ADC_VOPAMP4 = 0xF9,
// Arduino connector namings
A0 = PA_3,
A1 = PC_0,
A2 = PC_3,
A3 = PD_11,
A4 = PD_12,
A5 = PD_13,
A6 = PB_1,
A7 = PC_2,
A8 = PF_4,
D0 = PC_5,
D1 = PC_4,
D2 = PF_15,
D3 = PE_13,
D4 = PF_14,
D5 = PE_11,
D6 = PE_9,
D7 = PF_13,
D8 = PF_12,
D9 = PD_15,
D10 = PD_14,
D11 = PA_7,
D12 = PA_6,
D13 = PA_5,
D14 = PB_9,
D15 = PB_8,
D16 = PC_6,
D17 = PB_15,
D18 = PB_13,
D19 = PB_12,
D20 = PA_15,
D21 = PC_7,
D22 = PB_5,
D23 = PB_3,
D24 = PA_4,
D25 = PB_4,
D26 = PB_6,
D27 = PB_2,
D28 = PF_10,
D29 = PF_5,
D30 = PF_3,
D31 = PE_2,
D32 = PA_0,
D33 = PB_0,
D34 = PE_0,
D35 = PB_11,
D36 = PB_10,
D37 = PE_15,
D38 = PE_14,
D39 = PE_12,
D40 = PE_10,
D41 = PE_7,
D42 = PE_8,
D43 = PC_8,
D44 = PC_9,
D45 = PC_10,
D46 = PC_11,
D47 = PC_12,
D48 = PD_2,
D49 = PG_2,
D50 = PG_3,
D51 = PD_7,
D52 = PD_6,
D53 = PD_5,
D54 = PD_4,
D55 = PD_3,
D56 = PE_2,
D57 = PE_4,
D58 = PE_5,
D59 = PE_6,
D60 = PE_3,
D61 = PF_8,
D62 = PF_7,
D63 = PF_9,
D64 = PG_1,
D65 = PG_0,
D66 = PD_1,
D67 = PD_0,
D68 = PA_10,
D69 = PA_9,
D70 = PA_8,
D71 = PA_7,
D72 = PA_1,
D16 = PC_6,
D17 = PB_15,
D18 = PB_13,
D19 = PB_12,
D20 = PA_15,
D21 = PC_7,
D22 = PB_5,
D23 = PB_3,
D24 = PA_4,
D25 = PB_4,
D26 = PB_6,
D27 = PB_2,
D28 = PF_10,
D29 = PF_5,
D30 = PF_3,
D31 = PE_2,
D32 = PA_0,
D33 = PB_0,
D34 = PE_0,
D35 = PB_11,
D36 = PB_10,
D37 = PE_15,
D38 = PE_14,
D39 = PE_12,
D40 = PE_10,
D41 = PE_7,
D42 = PE_8,
D43 = PC_8,
D44 = PC_9,
D45 = PC_10,
D46 = PC_11,
D47 = PC_12,
D48 = PD_2,
D49 = PG_2,
D50 = PG_3,
D51 = PD_7,
D52 = PD_6,
D53 = PD_5,
D54 = PD_4,
D55 = PD_3,
D56 = PE_2,
D57 = PE_4,
D58 = PE_5,
D59 = PE_6,
D60 = PE_3,
D61 = PF_8,
D62 = PF_7,
D63 = PF_9,
D64 = PG_1,
D65 = PG_0,
D66 = PD_1,
D67 = PD_0,
D68 = PA_10,
D69 = PA_9,
D70 = PA_8,
D71 = PA_7,
D72 = PA_1,
// STDIO for console print
#ifdef MBED_CONF_TARGET_STDIO_UART_TX
STDIO_UART_TX = MBED_CONF_TARGET_STDIO_UART_TX,
CONSOLE_TX = MBED_CONF_TARGET_STDIO_UART_TX,
#else
STDIO_UART_TX = PD_8,
CONSOLE_TX = PD_8,
#endif
#ifdef MBED_CONF_TARGET_STDIO_UART_RX
STDIO_UART_RX = MBED_CONF_TARGET_STDIO_UART_RX,
CONSOLE_RX = MBED_CONF_TARGET_STDIO_UART_RX,
#else
STDIO_UART_RX = PD_9,
CONSOLE_RX = PD_9,
#endif
// Generic signals namings
LED1 = PB_0,
LED2 = PB_7,
LED3 = PB_14,
LED4 = LED1,
USER_BUTTON = PC_13,
// Standardized button names
BUTTON1 = USER_BUTTON,
SERIAL_TX = STDIO_UART_TX, // Virtual Com Port
SERIAL_RX = STDIO_UART_RX, // Virtual Com Port
CONSOLE_TX = STDIO_UART_TX, // Virtual Com Port
CONSOLE_RX = STDIO_UART_RX, // Virtual Com Port
I2C_SCL = D15,
I2C_SDA = D14,
SPI_MOSI = D11,
SPI_MISO = D12,
SPI_SCK = D13,
SPI_CS = D10,
PWM_OUT = D9,
/**** USB pins ****/
USB_DM = PA_11,
USB_DP = PA_12,
@ -382,6 +349,12 @@ typedef enum {
NC = (int)0xFFFFFFFF
} PinName;
// Standardized LED and button names
#define LED1 PB_0 // LD1 [Green]
#define LED2 PB_7 // LD2 [Blue]
#define LED3 PB_14 // LD3 [Red]
#define BUTTON1 PC_13 // USER_Btn [B1]
#ifdef __cplusplus
}
#endif