I designed this robot control board for my students to be used as a basis for an entry into a robotics competition hosted by a university near us.
It is shown on a Magician Chasis that I used as a test platform.
I decided to use a PICAXE 08m2 since the idea was to make the robot as inexpensive as possible, and as this application does not realy require that the robot have the ability to reverse, I used MOSFET transistors to switch the motors on instead of an H-bridge.
Using the Serial In (C.5) pin on the 08m2 requires programming skills slighty beyond the scope of what my students need to learn so I decided to keep it dedicated to serial programming. That was one pin out of 6 used. To get the maxim use out of the remaining pins I put a button on the only input only pin (C.3) and used C.1 and C.2 as general user acessable IO (for analog sensors, or adding I2C IO extenders, or servos, or piezo buzzer, or whatever.). That left the Serial Out (C.0) pin and pin C.4 for motor control. Connecting a tansistor directly to the serial out (C.0) pin for a motor would have caused the motor to "twitch" every time a program was downloaded. To solve this problem I had to look at a way of disabling the motor mosfet when the download cable was plugged in. The solution I settled with was using P-channel mosfets (mosfets that turn on when connected to GND or pulled LOW) between the pin and the motor drive mosfet. The Stereo socket I used has a mechanism of disconnecting certain pins when the plug is plugged in, so when you plug in the download cable the motor driver mosfets are disabled because the GND is disconnected to the P-channel mosfets and they turn off, preventing any signals to pass to the motor driver mosfets. Yay! nothing twitches when the download cable is plugged in, and the robot wont suddenly start driving off the table while it is plugged in to the PC.
The idea is then to use the button to have the robot wait for it to be pressed before it starts to run its navigation program.
If anyone is interested in the EAGLE board files, I will post them.