ADwin-Gold
USB / ENET, manual version 3.8, October 2005
15
Inputs and Outputs
ADwin
Contrary to the standard instructions
ADC()
,
ADC12()
and
DAC()
the instruc-
tions for direct access
do not have any test routines.
Before you use them we
recommend to learn more about time sequences, program structures and func-
tions sequences in an ADC.
5.3.1 Analog Inputs and Outputs
ADC()
and
ADC12()
The standard instructions
ADC()
and
ADC12()
consist of a sequence of sev-
eral instructions (see below). They need a certain time for execution. The exe-
cution time is mostly determined by the settling time of the multiplexer and the
conversion time.
SET_MUX()
…
'wait for settling of the
'multiplexer
START_CONV()
WAIT_EOC()
'wait for end of conversion
READ_ADC()
'or READ_ADC12() at ADC12()
Program structure
You can use (or extend) the waiting times caused by the standard instructions
for other purposes. If you apply these instructions skillfully you may be able to
execute faster measurements.
It is important to set the
START_CONV()
instruction in a sufficient time-delay
from the
SET_MUX()
instruction, in order to consider the multiplexer settling
time (see also
ADbasic
manual, Instruction Reference).
Use the waiting times for instance for arithmetic operations and save CPU time:
– Settling time of the multiplexer: At a maximum voltage jump of 20 Volt it
is 6.5 µs (max.) for the 16-bit ADC and 2.5 µs for the 14-bit ADC.
– Conversion time of the ADC: Its is 0.5 µs for the 14-bit ADC and 5 µs for
the 16-bit ADC.
Direct Register Access
ADC
A measurement can be executed very fast, when you directly access the con-
trol and data registers of the ADC.
DAC
If you have made sure that at the analog outputs the values are within the range
limits, you can write very quickly into one or more DAC registers with direct
access to the hardware registers, and you can synchronously start the output,
(see
ADbasic
manual).
The hardware addresses for the direct access to the control and data registers
are described on the following pages.