cancel
Showing results for 
Search instead for 
Did you mean: 

I have used CubeMX to configure some GPIO pins for an interface to some other I/O devices. CubeMX generates initialization code for some other GPIO pins in gpio.c and main.h, but nothing for the I/O I defined.

RGate.2
Associate II

I'm working on a project using a STM32H747XIHx dual core processor.  I believe I have the latest STM32CubeIDE and STM32CubeMX tools.  How do I configure CubeMX to generate GPIO initialization code for my I/O signals?

1 ACCEPTED SOLUTION

Accepted Solutions
Bob S
Principal

I haven't used the dual core parts yet, but the answers to questions like this tend to start with "make sure you have the GPIO mapped/assigned to the correct CPU". If the pin is not mapped, or mapped to the other CPU (say M7 core), then the M4 code won't init that pin.

View solution in original post

4 REPLIES 4
Bob S
Principal

I haven't used the dual core parts yet, but the answers to questions like this tend to start with "make sure you have the GPIO mapped/assigned to the correct CPU". If the pin is not mapped, or mapped to the other CPU (say M7 core), then the M4 code won't init that pin.

RGate.2
Associate II

Thanks, Bob. I didn't think about checking the other core, but there's no initialization there either. Now that you mention it, though, I don't remember seeing anything in CubeMX that allowed me to specify which core a particular GPIO was assigned to. Various other peripherals, yes, but individual GPIO pins not assigned to a particular peripheral, no.

RGate.2
Associate II

I may have figured it out. Each GPIO has a Core Context Assignment. I had all of mine set as "Free". I'm changing them to "M7" to see what I get.

RGate.2
Associate II

That is the answer, Bob. Again, thank you very much.