If you want to know more about ATtiny85 microcontroller and how to upload sketches to it, you may have a look to ATtiny85 vs ATmega328.
For the mobile part, I went simple and used MovingRaspi frame. Thus electronic part seems (OK, is) really small (a compact rover as I previously said). Other part are standard ones:
About motors driving, we have to use 3 pins from L293D per motor: one pin to enable the motor, one pin to make it rotate in one direction, one pin to make it rotate in the other direction. Thus you need 6 pins, which is higher than ATtiny85 available I/O. There's an easy trick: you may always enable motors (with doesn't mean they'll run all the time, you then have to play with the to pins dedicated to rotation direction) by wiring them to +5V line. Then you only need 4 pins from ATtiny85 which will drive rotation direction.
Now you have to use proximity sensor. It need to be wired to +5V and ground. You should add a 10µF capacitor between +5V and ground to filter noise. As I didn't have one of it, I used four 0.1µF capacitors (parallel wiring) which seems to be enough. The third connector is an analog input, which give voltage depending on the distance of the front obstacle (greater distance means lower voltage). But if you look at component's datasheet, you may see two things:
As this single output is analogic, you have to wire it to the last available analogic pin of ATtiny85.
Now all components are wired (see next paragraph for wiring schematics), and ATtiny is fully used. Only pin number 1 should remain free. This pin may be used as an ADC ou digital I/O, but if you use it you won't be able to upload programs to the chip (except with an “heavy” treatment to restore its RESET function which is outside of this post).
Schematics and code are available on GitHub.
Just a word about obstacle avoidance strategy, which is pretty simple: