
S3C821A/P821A
A/D CONVERTER
14-1
14
ANALOG-TO-DIGITAL CONVERTER
OVERVIEW
The 8-bit A/D converter (ADC) module uses successive approximation logic to convert analog levels entering at
one of the four input channels to equivalent 8-bit digital values. The analog input level must lie between the
AV
REF and AVSS values. The A/D converter has the following components:
— Analog comparator with successive approximation logic
— D/A converter logic (resistor string type)
— ADC control register (ADCON)
— Four multiplexed analog data input pins (ADC0–ADC3)
— 8-bit A/D conversion data output register (ADDATA)
— AV
REF and AVSS input pins
To initiate an analog-to-digital conversion procedure, you should load a value in analog input pin selection bits in
the A/D converter control register ADCON to select one of the four analog input pins (ADCn, n = 0–3) and set the
conversion start or enable bit, ADCON.0. The read-write ADCON register is located in set 1, bank 0, at address
F7H.
During a normal conversion, ADC block initially sets the successive approximation register to 80H (the
approximate half-way point of an 8-bit register). This register is then updated automatically during each
conversion step. The successive approximation block performs 8-bit conversions for one input channel at a time.
You can dynamically select different channels by manipulating the channel selection bit value (ADCON.6–
ADCON.4) in the ADCON register.
To start the A/D conversion, you should set the enable bit, ADCON.0. When a conversion is completed,
ADCON.3, the end-of-conversion (EOC) bit is automatically set to 1 and the result is dumped into the ADDATA
register where it can be read. The A/D converter then enters an idle state. Remember to read the contents of
ADDATA before another conversion starts. Otherwise, the previous result will be overwritten by the next
conversion result.
NOTE
As the A/D converter has no sample-and-hold circuitry, it is very important that fluctuation in the analog
level at the ADC0–ADC3 input pins during a conversion procedure be kept to an absolute minimum. Any
change in the input level, perhaps due to noise, will invalidate the result. If the chip enters to STOP or
IDLE mode in conversion process, there will be a leakage current path in A/D block. You must use STOP
or IDLE mode after ADC operation is finished.