Transistor curve tracer.

Latest project is a transistor curve tracer.
As it stands the software can input upto 5 transistors data and display a trace on the PC screen in a different colour for each transistor.
The hardware simply applies a voltage from 0 to 10 volts through a 1k resistor into the base/gate and the drain/collector voltage is read in via an A2D.
The drain/collector has a 100r resistor to 10 volts to apply a current.
Instead of just the usual set "scope" screen I have used a CAD type screen where you can zoom and pan around to get in close to the action.

The microcontroller uses PWM to set the gate/base voltage through an x3 gain op amp. The micro has a USB interface for passing data to pc.
You can save/load traces and print them out.
 
I progressed quite a bit with the hardware and software today.
The PWM into an RC filter was a bit slow at changing so I changed 10K resistor in filter to 1K and that makes it much faster.
The software has been a bit tricky at times getting all the levels right and making it user friendly.
I used 10 volts originally for the drain/collector supply through a resistor but this was inaccurate. So I reduced it to 9 volts which works better with the 3V3 microcontroller.
I can multiply or divide by the 3 to get close to the 9 volts or 3v3.
The pc software now not only does markers or the collector/drain voltage but also for the gate/base voltage. You can read off the screen the same base/gate voltage for different transistors.
You can also run markers along the collector/drain voltages to trace the curves.
The software can now save traces to disc, print them out for save to a bitmap file.