
S3CC40D/FC40D_UM_REV1.20
10-BIT A/D CONVERTER
22
10-BIT ANALOG-TO-DIGITAL CONVERTER
OVERVIEW
The 10-bit A/D converter (ADC) module uses successive approximation logic to convert analog levels entering at
one of the eight input channels to equivalent 10-bit digital values. The analog input level must lie between the
AVREF 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)
Twenty-four multiplexed analog data input pins (AD0–AD23)
10-bit A/D conversion data output register (ADDATAH/ADDATAL)
FUNCTION DESCRIPTION
To initiate an analog-to-digital conversion procedure, at first you must set with alternative function for ADC input
enable at port 4, port5 and port6, the pin set with alternative function can be used for ADC analog input. And you
write the channel selection data in the A/D converter channel selection register ADCHSEL.4–.0 to select one of
the twenty-four analog input pins (AD0–AD23) and set the conversion start or enable bit, ADCON.0. The read-
write ADCON register is located in address 3F00A9H.
During a normal conversion, ADC logic initially sets the successive approximation register to 800H (the
approximate half-way point of an 10-bit register). This register is then updated automatically during each
conversion step. The successive approximation block performs 10-bit conversions for one input channel at a time.
You can dynamically select different channels by manipulating the channel selection bit value (ADCHSEL.4–.0) in
the ADCHSEL 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 ADDATAH/ADDATAL register where it can be read. The A/D converter then enters an idle state. Remember
to read the contents of ADDATAH/ADDATAL before another conversion starts. Otherwise, the previous result will
be overwritten by the next conversion result.
NOTE
Because the A/D converter has no sample-and-hold circuitry, it is very important that fluctuation in the analog
level at the AD0–AD23 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.
22-1