2021-07-14 09:35 AM
I've looked in many places and haven't found a definitive answer yet. The reference manual simply states that reading the GPIO port input register returns the value of the associated pins. Does that mean that an external device has to be driving the GPIO pin at that time? What if no external device is driving the GPIO pin at that time (i.e. all candidate drivers are in hi-z) but have previously driven a value onto the GPIO pin. For what it's worth I am planning to use the STM32H725 (CORDIC + FMAC + MDMA -- very cool!)
Solved! Go to Solution.
2021-07-14 09:55 AM
> Does that mean that an external device has to be driving the GPIO pin at that time?
Yes.
> What if no external device is driving the GPIO pin at that time (i.e. all candidate drivers are in hi-z) but have previously driven a value onto the GPIO pin.
The input level is undefined.
JW
2021-07-14 09:55 AM
> Does that mean that an external device has to be driving the GPIO pin at that time?
Yes.
> What if no external device is driving the GPIO pin at that time (i.e. all candidate drivers are in hi-z) but have previously driven a value onto the GPIO pin.
The input level is undefined.
JW
2021-07-14 10:44 AM
Typically the way this is handled is to use an internal/external pulldown/pullup such that if nothing is driving it externally, the level goes to a known default state.
2021-07-14 12:08 PM
Thank you for the clarification. Will design accordingly!
John W