2023-09-16 09:35 PM
I have two of the STM32H747I-DISCO boards. I have used STM32CubeIDE to create a simple project for the boards. I followed AN5361 and am able to debug and see the CM7 and CM4 cores running.
I've added code to toggle the board LEDs (port I) but don't see any activity - even with an oscilloscope. The IDE did create the code to enable the GPIO clock (__HAL_RCC_GPIOI_CLK_ENABLE() ).
I didn't have any trouble getting blinking LEDs on my STM32F407G-DISC1 boards.
The issue seems to be that the four GPIO pins for the LEDs are in a high-impedance state even though Pinout View shows that they're all configured as outputs. The pins are floating at between 1V and 2V (with the scope probe weakly pulling to GND). I can alter the voltage on the pins by connecting a 100k resistor from a pin to either 3.3V or GND, so they're definitely floating.
I suspect that there is a clocking issue to GPIO Port I, but I'm new to the STM world and don't know where to start.
Can someone please point me in the right direction?
Solved! Go to Solution.
2023-09-17 02:12 AM
did you assign the core, thats setting the port, in Cube to this port ? (iirr the blue area F4 and F7 )
2023-09-17 01:11 AM
For GPIOs that configuration as Output that it has many type of configuration such as Push-Pull or open-drain
and you should set initial state of them too.
But it's never go to 0 volt on every stage because it's drive by High-side and Low-side transistor which they has voltage on Vce and it's about 1 voltage.
2023-09-17 02:12 AM
did you assign the core, thats setting the port, in Cube to this port ? (iirr the blue area F4 and F7 )
2023-09-17 07:12 AM
Probably something isn't configured right in the IOC file. Attach it if you can.
2023-09-17 07:42 AM
YES! That was the problem. In the IDE -> Pinout & Configuration -> GPIO -> then for a given pin -> Pin Context Assignment --> change from "Free" to "ARM Cortex-M7".
Thanks much.