NUCLEO-H563ZI: floating PD11 reads LOW with pull-up and HIGH with pull-down
Hi,
I am testing PD11 on an STM32H563ZI with a NUCLEO-H563ZI board.
The pin is configured as plain GPIO input using STM32 HAL:
GPIO_InitStruct.Pin = GPIO_PIN_11;
GPIO_InitStruct.Mode = GPIO_MODE_INPUT;
GPIO_InitStruct.Pull = GPIO_PULLUP; // or GPIO_PULLDOWN / GPIO_NOPULL
HAL_GPIO_Init(GPIOD, &GPIO_InitStruct);I rebuild and reflash the firmware for each case, then read the pin with HAL_GPIO_ReadPin(GPIOD, GPIO_PIN_11).
What I observe is:
- GPIO_MODE_INPUT + GPIO_PULLUP -> LOW
- GPIO_MODE_INPUT + GPIO_PULLDOWN -> HIGH
- GPIO_MODE_INPUT + GPIO_NOPULL -> LOW
I also checked the pin with a multimeter, and the measured pin level matches what the MCU reads.
I have rebuilt and reflashed multiple times and I keep getting the same pattern.
My expectation was that a floating input with internal pull-up should read HIGH, and with internal pull-down should read LOW.
Is there anything special about PD11 on NUCLEO-H563ZI / STM32H563ZI, or any known STM32H5 GPIO behavior that could explain this?
Thanks.
