2024-09-06 02:01 PM
I have just started evaluating the STM32U575ZIT6QU for a project that my company is working on.
While attempting to evaluate the I2C pins for I2C1 on pings PG13 & PG14, I noticed that the pins would not work correctly and would stay low, even with internal pull-ups enabled.
After this finding, I switched the pins to be basic Push-Pull output GPIO instead, and still could not get them to work. All the GPIO on the other ports seem to work fine, except for port G. The inputs to port G do not seem to work either. I am using the generated code from the .ioc file, but have followed all the code and registers to make sure that the RCC was getting enabled to the port as well as checking the GPIO registers to make sure it was configured correctly.
I have also tried creating a new project to see if there was a configuration issue, but that didn't seem to solve the issue. Is there something specific I need to do to use port G on this part? Or should is it possible something happened to the part and this port is unusable?
I am currently using the NUCLEO-U575ZI-Q devkit and have soldered male headers onto the board. Any information or suggestions would be helpful, thank you!
Solved! Go to Solution.
2024-09-06 02:03 PM - edited 2024-09-06 02:06 PM
Pins on GPIOG must be powered by VDDIO, and that must be explicitly enabled.
/* Enable VDDIO2 supply */
__HAL_RCC_PWR_CLK_ENABLE();
HAL_PWREx_EnableVddIO2();
2024-09-06 02:03 PM - edited 2024-09-06 02:06 PM
Pins on GPIOG must be powered by VDDIO, and that must be explicitly enabled.
/* Enable VDDIO2 supply */
__HAL_RCC_PWR_CLK_ENABLE();
HAL_PWREx_EnableVddIO2();
2024-09-07 04:28 AM
Hello,
Because port G[15:2] is in VDDIO2 domain that needs to be enabled as stated by @Tesla DeLorean
Please refer to the datasheet DS13737 Rev 10 / page 34.