Here is a motor controller that only needs 2 lines for control, it communicates serially via 2400 or 9600 Baud TTL signals. It's a smart controller that has a number of parameters that can be adjusted and can return valuable data such as speed & position.
This serial motor controller provides serial control of small brushed DC motors. Motor speed and direction can be controlled with 255 discrete step in both directions. The 21 serial commands include set duty cycle, stop, reverse, read tachometer, set-point or proportional-integral speed control, write EEPROM, read EEPROM, change baud rate, change PWM frequency, count, set duty cycle and direction (single command). Use the Motor Mind BE for your precise robotic and control systems applications.