diff --git a/targets/CMSIS-OS/ChibiOS/nanoCLR/Windows.Devices.Gpio/windows_devices_gpio_native_Windows_Devices_Gpio_GpioPin.cpp b/targets/CMSIS-OS/ChibiOS/nanoCLR/Windows.Devices.Gpio/windows_devices_gpio_native_Windows_Devices_Gpio_GpioPin.cpp index 1001eff701..f3b2970628 100644 --- a/targets/CMSIS-OS/ChibiOS/nanoCLR/Windows.Devices.Gpio/windows_devices_gpio_native_Windows_Devices_Gpio_GpioPin.cpp +++ b/targets/CMSIS-OS/ChibiOS/nanoCLR/Windows.Devices.Gpio/windows_devices_gpio_native_Windows_Devices_Gpio_GpioPin.cpp @@ -19,7 +19,35 @@ using namespace Windows::Devices::Gpio; -stm32_gpio_t* gpioPort[] = { GPIOA, GPIOB, GPIOC, GPIOD, GPIOE, GPIOF, GPIOG, GPIOH, GPIOI, GPIOJ }; +stm32_gpio_t* gpioPort[] = { GPIOA, GPIOB +#if STM32_HAS_GPIOC +, GPIOC +#endif +#if STM32_HAS_GPIOD +, GPIOD +#endif +#if STM32_HAS_GPIOE +, GPIOE +#endif +#if STM32_HAS_GPIOF +, GPIOF +#endif +#if STM32_HAS_GPIOG +, GPIOG +#endif +#if STM32_HAS_GPIOH +, GPIOH +#endif +#if STM32_HAS_GPIOI +, GPIOI +#endif +#if STM32_HAS_GPIOJ +, GPIOJ +#endif +#if STM32_HAS_GPIOK +, GPIOK +#endif + }; #define GPIO_PORT(pin) (gpioPort[(pin/16) - 1])