12 bit, ISA bus compatible, AD converter



This AD converter use an old ( but enough good for general purpose applications) soviet copy of a Analog Devices
12 bit converter. Because K572PV1 serial - parallel, AD - DA converter is not full compatible with AD master cloning device and no russian documentation is available, I've translated from russian a small data sheet available now only in romanian language. The following material contents:

1. Self running AD converter and interfacing to bus
2. Address decoding and 16 bit data transfer mode
3. 4 channel multiplexing and variable amplifier stage
4. Negative reference voltage stage
5. Miscellaneous ( full schematics, bill of materials, a little C driving program )

1. Self running AD converter and interfacing to bus

K572PV1 was designed for universal purpose: can be AD converter with 12 bit out , 8 + 4 bit out with high Z capabilities, have a negative or positive input, a positive or negative reference or can be DA converter with output current signal. A SERIAL command pin can load internal registers synchronously with CLK signal ( max. 250 KHz ). Because 2 clock pulses are needed for every bit conversion ( 12 x 2  for whole 12 bit word) plus 2  supplementary clock pulses ( one for START and one for END  conversion signals ) a minimum 110uS acquisition time can be reached only if a good external comparator is  used. The typical configuration for a self running AD converter with 12 bit output and minimum conversion time is shown  in next figure:

Two power supplies are needed ( +5 and +12 V ) with a defined sequence at start-up or a protection circuitry made by D1 and D2. Because +/-12V from computer may have a 100mV to 500mV ripple at high frequency a supplementary filter was added (L2, C2, L1, C3 ). R23 is a offset trim for zero adjustment.  The internal resistors from R-2R-R/4 network have a typically 13K, 26K, 13K/4 value. Analog signal ( applied to IN pin) is converted in current using R (pin34 to pin37) and compared with OUT1 signal. The result of comparation finished or not the internal successive approximation algorithm. A high level more than 10V is required forCOMP input pin. When the whole 12 bit word was generated a high impulse END conversion allowed U2 and U3 buffers to latch the word. Buffers can be read any time when a read chip select  (CSR) appears, this signal is generated by computer trough address decoding stage. With this operating mode always last conversion word has been read. If computer is very fast between 2 conversions can be read a lot of unchanged words.

2. Address decoding and 16 bit data transfer mode

Of course for this not " warp 6 " transfer rate at 110 uS, using a 16 bit data transfer mode can be a curious option ( at 12 bit word a normal designer use two words (8 + 4 bit) and have a lot of time for playing games between two successive readings. First I'm not 100% a normal guy and second I want to test possibilities of 16 bit transfer with a very simple logic:

A simple address selection using some TTL circuits ( or better a GAL16V8 device and a programmer, maybe I will write something about this ...) use the prototype reserved address area. From 310H to 31EH only even address can be used.
With the same address can be done a 16 bit read (CSR and IOCS16) or a 8 bit write (CSW) for multiplexing and amplifier devices. A 250KHz oscillator (CLK) is also presented here.

3.  4 channel multiplexing and variable amplifier stage

Like some " universal devices "  K572PV1 can measure only positive or negative input signals. Bipolar signals are a big unknown for this converter. So, I have to do some artifacts to convince converter to work in a bipolar mode:

The four bipolar input signals (max -5V to +5V ) are applied to JP1. If we have to measure four floated signals (with no common ground) than we use I1G1, I2G2, I3G3, I4G4 input pins. Eight diodes ( D3 to D10 ) try to protect the first multiplexing circuit U14 ( but like Murphy said this will protect the 2Amps fuse from the power supply you apply at JP1...)
Gain of U13 amplifier can be programed from 2 bit ( GAIN1 and GAIN2 ) in four ranges: x1, x2, x5, x10 . Of course that precision of gain is set from value of resistors, for a perfect x1.000 gain, variable resistors must be added. However, a 0.5...1% tolerance resistors is quite acceptable even for pretentiously... U15 is a summing inverting amplifier, so for a -5V to +5V input signals ( at JP1 )  the IN signal will be 0V to +10, that means only 11 bit for measuring and 1bit for sign.
The programming word  for multiplexing channels and gain are shown in next table:
 
 
 
D3 D2 D1 D0 GAIN CHANNEL
x x 0 0 1 x
x x 0 1 2 x
x x 1 0 5 x
x x 1 1 10 x
0 0 x x x 1
0 1 x x x 2
1 0 x x x 3
1 1 x x x 4

So, an OUT 310H,xFH means that channel 4 is used with a x10 gain amplifier and a IN 310H, (data) will read a 16 bit word from witch only the last 12 bit are active.

4. Negative reference voltage stage

Well, a serious converter has internal reference, K572PV1 has not... I designed a negative reference using a positive one and a
amplifier because was all I have at that moment:

No special comments, external trimming components can be aded, a better way is to use a -10.24V negative reference
( for example from Maxim...)

5. Miscellaneous ( full schematics, bill of materials, a little C driving program )

This project is only an example for understanding a way for interfacing with ISA bus. I work a lot at this schematics and
PCB ( made on a protoboard with wire wrapping modified technology) Now there are a lot of good AD convertors and
full data aquisition chips (Maxim is a good example for this) running at high frequencies.
The whole schematics including ISA conector,  is here:

A better way for viewing schematics is HP-GL file: PV1.plt Can be view or print with  Printgl or any other HP-GL viewer.
With the courtesy of Neamtu Dorel who write a little program for driving this board you can have it from here. If someone is interested to built exactly this schematics ( maybe someone from Soviet Union...) a bill of materials generated by Orcad4 is also here. That's all folks!

Back to Vasile's electronics page



web adress: http://www.oocities.org/vsurducan       email adress: vasile@l30.itim-cj.ro
last update: 01.10.2000