Zunächst fällt auf das die Taster keinen echten Effekt haben.

Das lisgt daran das offene Eingänge an Gattern als "1" interpretiert werden.

du Tastest also zwischen einer gewollten und einer ungewollten "1" an den Gattern hin und her wobei sich der Motor nie rühren wird.

Also Eingänge mit Widerstand nach Masse ziehen.


Wenn wir schon dabei sind wäre es einfacher wenn du die Gatter wegläst und statt schließern Öffner nimmst.
Der jeweilige Widerstand nach Masse bleibt aber.

Läuft der Motor in die Endstellung dann wird der Endtaster betätigt und unterbricht das Steuersignal.



Ansonsten mußt du Elektrisch noch was drann arbeiten denn entweder stellst du deine Steuersignale auf Vcc (in diesem Falle 12V) und die Gatter auf Cmos um oder du bastelst dir gescheite Pegelwandler ein.

Mit 5V-Signalen aussem Controller geht das so nicht.