#pragma once
// ok no namespace fl

// Nucleo F411RE Pin Definitions
// Included by families/stm32f4.h - do not include directly
// Defines pin mappings inside fl:: namespace
// STM32F411RET6 - 51 pins

// IWYU pragma: private, include "platforms/arm/stm32/pins/families/stm32f4.h"

#include "platforms/arm/stm32/pins/core/armpin_template.h"
#include "platforms/arm/stm32/pins/core/gpio_port_init.h"
#include "platforms/arm/stm32/pins/core/pin_macros.h"
#include "platforms/arm/stm32/pins/families/stm32f4.h"

// Port A
_DEFPIN_ARM_F4(0, 3, A);   // PA_3
_DEFPIN_ARM_F4(1, 2, A);   // PA_2
_DEFPIN_ARM_F4(2, 10, A);  // PA_10
// Port B
_DEFPIN_ARM_F4(3, 3, B);   // PB_3
_DEFPIN_ARM_F4(4, 5, B);   // PB_5
_DEFPIN_ARM_F4(5, 4, B);   // PB_4
_DEFPIN_ARM_F4(6, 10, B);  // PB_10
// Port A
_DEFPIN_ARM_F4(7, 8, A);   // PA_8
_DEFPIN_ARM_F4(8, 9, A);   // PA_9
// Port C
_DEFPIN_ARM_F4(9, 7, C);   // PC_7
// Port B
_DEFPIN_ARM_F4(10, 6, B);  // PB_6
// Port A
_DEFPIN_ARM_F4(11, 7, A);  // PA_7
_DEFPIN_ARM_F4(12, 6, A);  // PA_6
_DEFPIN_ARM_F4(13, 5, A);  // PA_5
// Port B
_DEFPIN_ARM_F4(14, 9, B);  // PB_9
_DEFPIN_ARM_F4(15, 8, B);  // PB_8
// Port C
_DEFPIN_ARM_F4(16, 10, C); // PC_10
_DEFPIN_ARM_F4(17, 12, C); // PC_12
// Port A
_DEFPIN_ARM_F4(18, 13, A); // PA_13
_DEFPIN_ARM_F4(19, 14, A); // PA_14
_DEFPIN_ARM_F4(20, 15, A); // PA_15
// Port B
_DEFPIN_ARM_F4(21, 7, B);  // PB_7
// Port C
_DEFPIN_ARM_F4(22, 13, C); // PC_13
_DEFPIN_ARM_F4(23, 14, C); // PC_14
_DEFPIN_ARM_F4(24, 15, C); // PC_15
// Port H
_DEFPIN_ARM_F4(25, 0, H);  // PH_0
_DEFPIN_ARM_F4(26, 1, H);  // PH_1
// Port C
_DEFPIN_ARM_F4(27, 2, C);  // PC_2
_DEFPIN_ARM_F4(28, 3, C);  // PC_3
_DEFPIN_ARM_F4(29, 11, C); // PC_11
// Port D
_DEFPIN_ARM_F4(30, 2, D);  // PD_2
// Port C
_DEFPIN_ARM_F4(31, 9, C);  // PC_9
_DEFPIN_ARM_F4(32, 8, C);  // PC_8
_DEFPIN_ARM_F4(33, 6, C);  // PC_6
_DEFPIN_ARM_F4(34, 5, C);  // PC_5
// Port A
_DEFPIN_ARM_F4(35, 12, A); // PA_12
_DEFPIN_ARM_F4(36, 11, A); // PA_11
// Port B
_DEFPIN_ARM_F4(37, 12, B); // PB_12
_DEFPIN_ARM_F4(38, 11, B); // PB_11
_DEFPIN_ARM_F4(39, 2, B);  // PB_2
_DEFPIN_ARM_F4(40, 1, B);  // PB_1
_DEFPIN_ARM_F4(41, 15, B); // PB_15
_DEFPIN_ARM_F4(42, 14, B); // PB_14
_DEFPIN_ARM_F4(43, 13, B); // PB_13
// Port C
_DEFPIN_ARM_F4(44, 4, C);  // PC_4
// Port A
_DEFPIN_ARM_F4(45, 0, A);  // PA_0
_DEFPIN_ARM_F4(46, 1, A);  // PA_1
_DEFPIN_ARM_F4(47, 4, A);  // PA_4
// Port B
_DEFPIN_ARM_F4(48, 0, B);  // PB_0
// Port C
_DEFPIN_ARM_F4(49, 1, C);  // PC_1
_DEFPIN_ARM_F4(50, 0, C);  // PC_0
