Arduino 12VDC motor controller with limits

Vernon333:
The system should be activated with 1 push button. 1 press makes the motor turn (for argument sake clockwise) another press of the button will stop the motor and if you press again the motor will reverse direction (counter clockwise in this example)

It is certainly possible to write a program to make that happen. However I reckon it will be a bit of a nightmare for the user who may inadvertently press it the wrong number of times. I would suggest using 2 buttons - one for up and one for down, or using a 3 position centre-off toggle or slide switch.

...R