This design uses half of an LM324 as a comparator to feed logic signals to a 9110 motor driver, in a way that a microcontroller with bidirectional pins (pretty much all of them at this point) can control the motor with only one pin.
When the pin on the microcontroller is set to input, the motor driver is idle.
When the pin is output high, the motor driver moves in one direction.
When the pin is output low, the motor driver moves in the other direction.
Throttling may be accomplished by switching the pin from output to input quickly.
Using one LM324 and two 9110s, this gives us tank-drive with only 2 logic pins without the need for PWM or timing-dependent servo pulses.
In addition, the LM324 acting as a comparator also takes care of voltage levels to drive the 9110. Note however that this design is not isolated.
This circuit will make it possible to use small microcontrollers such as the picaxe 08, the attiny85 or the ESP32Cam and still have a few pins left over.