Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Interfacing ADC To 8051. Circuit For Interfacing ADC 0804 To AT89S51 Microcontroller

Download as pdf or txt
Download as pdf or txt
You are on page 1of 8

Custom Search

Home
Forums
Datasheets
Lab Manual
Testing Components
Buy Project Kits
Electronic Circuits and Diagram-Electronics Projects
and Design

Interfacing ADC to 8051
admin
September - 6 - 2012
4 Comments
ADC (Analog to digital converter) forms a very essential part in many embedded projects and this article is about
interfacing an ADC to 8051 embedded controller. ADC 0804 is the ADC used here and before going through the
interfacing procedure, we must neatly understand how the ADC 0804 works.
ADC 0804.
ADC0804 is an 8 bit successive approximation analogue to digital converter from National semiconductors. The features
of ADC0804 are differential analogue voltage inputs, 0-5V input voltage range, no zero adjustment, built in clock
generator, reference voltage can be externally adjusted to convert smaller analogue voltage span to 8 bit resolution etc.
The pin out diagram of ADC0804 is shown in the figure below.
ADC0804 pinout
The voltage at Vref/2 (pin9) of ADC0804 can be externally adjusted to convert smaller input voltage spans to full 8 bit
resolution. Vref/2 (pin9) left open means input voltage span is 0-5V and step size is 5/255=19.6V. Have a look at the table
below for different Vref/2 voltages and corresponding analogue input voltage spans.
Vref/2 (pin9) (volts) Input voltage span (volts) Step size (mV)
Interfacing ADC to 8051. Circuit for interfacing ADC 0804 to AT89S... http://www.circuitstoday.com/interfacing-adc-to-8051
1 de 8 21/05/2014 18:01
Left open 0 5 5/255 = 19.6
2 0 4 4/255 = 15.69
1.5 0 3 3/255 = 11.76
1.28 0 2.56 2.56/255 = 10.04
1.0 0 2 2/255 = 7.84
0.5 0 1 1/255 = 3.92
Steps for converting the analogue input and reading the output from ADC0804.
Make CS=0 and send a low to high pulse to WR pin to start the conversion.
Now keep checking the INTR pin. INTR will be 1 if conversion is not finished and INTR will be 0 if conversion is
finished.
If conversion is not finished (INTR=1) , poll until it is finished.
If conversion is finished (INTR=0), go to the next step.
Make CS=0 and send a high to low pulse to RD pin to read the data from the ADC.
Circuit diagram.
Interfacing ADC to 8051
The figure above shows the schematic for interfacing ADC0804 to 8051. The circuit initiates the ADC to convert a given
Interfacing ADC to 8051. Circuit for interfacing ADC 0804 to AT89S... http://www.circuitstoday.com/interfacing-adc-to-8051
2 de 8 21/05/2014 18:01
Custom Search
analogue input , then accepts the corresponding digital data and displays it on the LED array connected at P0. For
example, if the analogue input voltage Vin is 5V then all LEDs will glow indicating 11111111 in binary which is the
equivalent of 255 in decimal. AT89s51 is the microcontroller used here. Data out pins (D0 to D7) of the ADC0804 are
connected to the port pins P1.0 to P1.7 respectively. LEDs D1 to D8 are connected to the port pins P0.0 to P0.7
respectively. Resistors R1 to R8 are current limiting resistors. In simple words P1 of the microcontroller is the input port
and P0 is the output port. Control signals for the ADC (INTR, WR, RD and CS) are available at port pins P3.4 to P3.7
respectively. Resistor R9 and capacitor C1 are associated with the internal clock circuitry of the ADC. Preset resistor R10
forms a voltage divider which can be used to apply a particular input analogue voltage to the ADC. Push button S1,
resistor R11 and capacitor C4 forms a debouncing reset mechanism. Crystal X1 and capacitors C2,C3 are associated with
the clock circuitry of the microcontroller.
Program.
ORG 00H
MOV P1,#11111111B // initiates P1 as the input port
MAIN: CLR P3.7 // makes CS=0
SETB P3.6 // makes RD high
CLR P3.5 // makes WR low
SETB P3.5 // low to high pulse to WR for starting conversion
WAIT: JB P3.4,WAIT // polls until INTR=0
CLR P3.7 // ensures CS=0
CLR P3.6 // high to low pulse to RD for reading the data from ADC
MOV A,P1 // moves the digital data to accumulator
CPL A // complements the digital data (*see the notes)
MOV P0,A // outputs the data to P0 for the LEDs
SJMP MAIN // jumps back to the MAIN program
END
Notes.
The entire circuit can be powered from 5V DC.
ADC 0804 has active low outputs and the instruction CPL A complements it t0 have a straight forward display.
For example, if input is 5V then the output will be 11111111 and if CPL A was not used it would have been
00000000 which is rather awkward to see.

You may also like:
Line follower robot using 8051 microcontroller
Object counter using 8051
Breathalyzer circuit using 8051
Heart rate monitor using 8051
Interfacing hex keypad to 8051
We recommend:
5 band graphic equalizer using LA3600
Digital temperature sensor
Lovotics A New Robot Race that can Love!!
CLAMPING CIRCUITS
Invention Story of Mobile Phone

Posted in 8051 projects
Leave a Reply
Name (required)
Interfacing ADC to 8051. Circuit for interfacing ADC 0804 to AT89S... http://www.circuitstoday.com/interfacing-adc-to-8051
3 de 8 21/05/2014 18:01
Mail (will not be published) (required)
Website
4 Responses to Interfacing ADC to 8051
ASHISH M G says:
March 5, 2014 at 10:15 pm
hi can u provide circuit for wall crack detecting robot using AT89C51
Reply
Rakshit says:
February 19, 2014 at 6:12 am
If we give 5v to pin 9, will 0804 ADC work ?
Reply
Munir Ahmad says:
July 19, 2013 at 10:08 am
This is munir ahmad, im electronics engineering student, i want c code of this circuit diagram, kindly you can give
me a favor doing this, ill be great thankful to you,,,,
Reply
EZE ROBERT says:
October 14, 2012 at 2:22 am
I suggest T-junction with pendenstial sign traffic ligth with counter, heart beat rate,Dot matrix display all these with
8051 in assembly language
Reply
Get Daily Updates via Email

Latest Articles
Digital thermometer using arduino
Temperature logger using arduino
Ultrasonic range finder using arduino
Voltmeter using arduino
PWM Control using Arduino Learn to Control DC Motor Speed and LED Brightness
Interfacing ADC to 8051. Circuit for interfacing ADC 0804 to AT89S... http://www.circuitstoday.com/interfacing-adc-to-8051
4 de 8 21/05/2014 18:01
Draw Your Circuits and Simulate them Online for Free using EasyEDA
Line Follower Robot using Arduino
Simple LED Projects using Arduino
Books to Learn PIC Microcontroller Basics For Beginners
Blink LED with Arduino say Hello World
Categories
101-Announcements
555 Timer IC
8051
8051 projects
Amplifier Circuits
Arduino
Audio Circuits
Automotive Circuits
AVR
Basic Electricity
Basic Electronics
Battery Circuits
C plus plus
C Programming
Cable TV Circuits
Camera Technology
Clipping and Clamping Circuits
Clocking & Timer Circuits
Conversion Circuits
Counter Circuits
Counters
Digital Electronics
Education & Training
Electronic Components
Interfacing ADC to 8051. Circuit for interfacing ADC 0804 to AT89S... http://www.circuitstoday.com/interfacing-adc-to-8051
5 de 8 21/05/2014 18:01
Electronic Keys & Locks
Electronics Books
Electronics Jobs
Embedded Systems
Equipment Reviews
Events
Fan Circuits
Filter Circuits
Fire Alarm
Fun & Game Circuits
Gadget Reviews
Ham Radio Circuits
High Voltage Circuits
History
Home Circuits
Industrial Circuits
Instruments
Integrated Circuits
Inverters
Lab Manuals
LED related
Light Related
Lighting Circuits
MATLAB
Microcontrollers
Mobile Phone Related
Motor Related
Nanotechnology
Oscillators
Peripheral Interface Controller (PIC)
Power Controller Circuits
Power Electronics
Power Supplies
Project Ideas
Projects
Proximity Detectors
Radio Circuits
Radio Transmitters
Raspberry Pi
Relays
Remote Circuits
Reviews
Robotics
RTOS
Security & Saftey
Sensor Circuits
Signal Conditioners
Signal Generators
Speed Controller Circuits
State space analysis
Switching Circuits
Tech News
Telephone Related
Television Related
Temperature Related
Test & Measurement Circuits
Testing Components
Three phase circuits
Interfacing ADC to 8051. Circuit for interfacing ADC 0804 to AT89S... http://www.circuitstoday.com/interfacing-adc-to-8051
6 de 8 21/05/2014 18:01
Timer Circuits
Tone generator circuits
Tools and Softwares
Transmitters
Tutorials
UPS
USB Circuits
Videos
VLSI
Voltage Regulators
Like Us on Facebook
Circuitstoday.com
22.275 pessoas curtiram Circuitstoday.com.
Plug-in social do Facebook
Curtir Curtir
Recent Comments
Seetharaman on 2 km FM transmitter
Victor on 2 km FM transmitter
Victor on 2 km FM transmitter
Victor on 2 km FM transmitter
Physics guy on 2 km FM transmitter
Seetharaman on 2 km FM transmitter
Seetharaman on PN Junction Diode and its characteristics
Seetharaman on 200M FM Transmitter
Seetharaman on Passive tone control circuit
Seetharaman on Mobile incoming call indicator
arun on Stereo FM transmitter using BA1404
Seetharaman on Two transistor tone controller
abubakar on Two transistor tone controller
Victor on 2 km FM transmitter
Eric on PN Junction Diode and its characteristics
Pages
About
Advertise With Us
Authors
Buy Project Kits
Datasheets
Electronic Circuit Symbols
Lab Manuals
Electronic Circuits Lab
Microcontroller lab
Microprocessor Lab
Interfacing ADC to 8051. Circuit for interfacing ADC 0804 to AT89S... http://www.circuitstoday.com/interfacing-adc-to-8051
7 de 8 21/05/2014 18:01
Privacy Policy
Project Contests
Resistor Color Code Calculator
Sitemap
Testing Components
Popular Tags
555 IC 555 timer Audio Amplifier Circuits Audio circuits circuit design circuit diagram Electronic
Circuits Electronic Components Electronic Instruments Filter Circuits History of Electronics hobby circuits hobby projects
Home Circuits IC Integrated Circuits Most Popular Circuits Nanotechnology NE555 timer Oscillators PIC Power Supplies Radio
Circuits SCR Simple Electronics Projects Tech News Thyristors Tutorials VLSI Voltage Regulators
Most Discussed
150 Watt amplifier circuit
100 Watt sub woofer amplifier.
Mains Operated LED Circuit
Automatic LED Emergency Light-Modified Version
2 km FM transmitter
Suggest a Topic to Publish & Win a 8GB Pen Drive
Automatic LED Emergency Light
Copyright 2007 - 2011 Circuitstoday.com Designed by Web Design Cochin
Interfacing ADC to 8051. Circuit for interfacing ADC 0804 to AT89S... http://www.circuitstoday.com/interfacing-adc-to-8051
8 de 8 21/05/2014 18:01

You might also like