Some progress, with the universal analog input output module, analog response analyzer, or line tracer, digitizer – however you want to call it. Added a few features – a bias supply for the differential input, and a high impedance amplifier (and a bit of protection circuitry) for the single-ended input.
First the bias supply – to allow a wide range of input voltages, say +-20 V (even below ground and well above the positive rail), we need a resistive divider network, and this needs to convert a differential voltage (with absolute voltages centered around ground), to a differential 0 to 2.5 V input, centered around 2.5 V (the internal bias of the ADC). A little calculator is used to find the right resistors and bias voltage. About 2.65 V will do the trick, for the desired input range, and resistor combination. Bias current is just about 1 mA or so, easily sourced/sinked by a OPA703 opamp.
This input is mainly designed to sense low impedance sources, e.g., current shunts or supply voltages (lead compensation, or similar configurations). So the ~50 k input impedance will be perfectly fine.
The general circuit, nothing really exciting about it – the AD7712 has a 8 MHz crystal, will run easily up to 1 kHz conversion rate. But mostly, it will be run at 50 or 60 Hz, to suppress any mains related noise, or even at 10 Hz.
A quick test showed that the USB communication is working (using a JY-MCU ATmega32L minimum board) – just waiting for some long waiting times and train travels to write a simple user interface, to control the outputs and the data acquisition by Windows GUI. For plotting and data analysis, I will resort to gnuplot and/or R, not re-inventing the wheel here. Maybe a simple preview screen.