Einen vollständigen Code hätte ich schon ganz gerne, sonst bin ich raus, ohne Grundlage kann man nur schwer etwas vermuten....
Der ganze Code muss nicht sein, aber alle Routinen die du aufrufst (v.a. MX_GPIO_Init() und alle anderen Peripherie-Initialisierungen) sollten schon vorhanden sein.
Auch wenn ich sehe, dass du das wohl mit Cube erstellst hast und somit SW-Fehler unwahrscheinlich sind, würde ein Blick darauf wohl dennoch nicht schaden.

Beim Schaltplan ist es ähnlich, das ist kein Schaltplan, sondern lediglich ein kleiner Ausschnitt davon. Was soll man da erkennen?