The easiest way to do analog to digital conversion is to use an IC such as the ADC0804 that does the work for you. The analog voltage is applied to pin 6 and the result is available at pins 11 through 18. We will connect pin 1 and 2 (Chip Select and Read) to ground so that the chip is always enabled. (If you wanted to use more than one ADC you could use this pin to control which chip is currently enabled).
Connect pin 7 (Vin – ) to ground. The ADC0804 includes an internal oscillator which requires an external capacitor and resistor to operate. Connect the 150 pF capacitor from pin 4 (CLOCK IN) to ground and the 10k ohm resistor from pin 4 to pin 19 (CLOCK R). ( Download Complete Circuit File : ADC.pdf )
Figure 2.5.1 Typical connection of free running mode
For example: The input range of ADC is 0 - 5 volt then we must setting Vref = 0.5 Vin maximum or = 2.5 volt because this ADC0804 is 8 bit then V resolution = 5/255 = 0.02 volt this is mean that ADC will respon each 0,02V increasing
to operate this ADC, we use a free running mode, by connecting WR to INT
When the conversion process is complete, pin 5 (Interrupt) will go low and this signal is used to convert ADC again.
Next we read the values into the 89s51 Port 0.
The assembly program will be:
Org 0hstart: mov A,P0 ; saving data ADC to Accumulator sjmp start end