In dem Beispiel-Code von Dir wurden die Ausgänge ja überhaupt nicht gesetzt, es wurde nur auf Ausgang gestellt und sonst nix, deshalb kanns schon sein, das die Motoren zufällig was machen.

Die Richtung wird so gesetzt, wie ich das gezeigt hab, vorher müssen natürlich alle auf Ausgang gestellt sein, das geht mit den DDRx Registern.