In this section, we will discuss the practicle issues og ADC0804 and Signal control on ADC0804. Then we will move to the interfacing of ADC0804 with microcontroller.
Signal control on ADC0804
1. Make CS = 0 and send a L-to-H pulse to pin WR to start the conversion.
2. Keep monitoring the INTR pin. If INTR is low, the conversion is finished and we can go to the next step. If INTR is high, keep polling until it goes low.
3. After the INTR has become low, we make CS = 0 and send a H-to-L pulse to the RD pin to get the data out of the ADC0804 IC chip.
Note: CS is set to low for both RD and WR pulses.
Write a program to monitor the INTR pin and bring the digital input value into register A. Then call a subroutine to display the input value on a 7-segment display. Do this continuously.
P2.6 = WR (Start conversion needs a L-to-H pulse)
; P2.7 = INTR (When low, end-of-conversion)
; P2.5 = RD (H-to-L will read the data from ADC chip)
; P1.0 – P1.7 = D0 – D7 of the ADC0804
;
MOV P1, #0FFH ; make P1=input
BACK: CLR P2.6 ; WR=0
SETB P2.6 ; WR=1 L-to-H to start conversion
HERE: JB P2.7, HERE ; wait for end of conversion
CLR P2.5 ; conversion finished, enable RD
MOV A, P1 ; read the data
ACALL DATA_DISPLAY ; display the data
SETB P2.5 ; make RD=1 for next round
SJMP BACK
Example of ADC Application
Temperature detection
A temperature sensor (LM34 or LM35) is interfaced to the 8051 via an ADC (ADC0804)
The output voltage from the LM34/LM35 is linearly proportional to the measuring temperature
The ADC0804 converts the output voltages from the LM34/LM35 into digital signals, which correspond to the measured temperature.They are then handled by the 8051
Interfacing with the LM35 (Temperature Sensor)
ADC Application:-
The ADC0804 converts the output voltages from the LM35 into digital signals, which correspond to the measured temperature.
Step size of the ADC0804 = (1.28)x(2)/255 = 0.01004V
Clock input to the ADC0804 = clock frequency / 4
If the following data of LM35 are given
the temperature range of the temperature sensor LM35 is -55C to 150C and its output scale is 10mV/C, and the output value of the ADC0804 is 00H when the LM35 senses -55C
then the value output from the ADC0804 for a measuring temperature 100 C is:
tags:adc0808,adc0804 tutorial,adc0804 circuits,adc0804 forum,adc0803 adc0804,adc0804 interfacing,adc0804 specs,adc0804 8 bit,ADC0801/ADC0802/ADC0803/ADC0804/ADC0805 8-Bit MuP Compatible A/D,ADC0804 Analog to Digital Converter with CdS Sensor Analog to Digital Converter ADC0804 interfacing with microcontrollers AVR 8051 PIC, Digital-Ramp ADC, Successive approximation ADC, Flash ADC and basic A/D and D/A Convertors - ADC - ADC0804 Analog to Digital Converter ADC0804 interfacing with microcontrollers AVR 8051 real time analog to digital converter circuit using IC (ADC0804) ADC0804 μP Compatible A/D Converter [ADC-ADC0804 Temperature Sensor with Digital Output The analog output of the sensor is then passed to the ADC0804 IC which produces an 8-bit binary output (digital output) correspoding to the analog input ADC0831 replaced with ADC0804 8051 with adc0804 : 8051 Microcontroller Projects AVR PIC Projects interfacing ADC0804 with 8051 The names of pins of AT89S52 connected to ADC0804 8051 microcontroller interfacing with adc0804 INTERFACE ADC0804 WITH 8051 - Free 8051 Microcontroller projects Automated Car Parking System using LDR interfaced with 8051 ADC0804 and analog mux 4051 Interface ADC0804 with 8051 microcontroller (AT89C51) Project Interface ADC0804 with 8051 microcontroller (AT89C51) Project Temperature sensor interfacing using Atmel 89c51 Interfacing ADC0804 with 8051, LM35 with ADC0804 Interfacing ADC0804 with 8051, LM35 with ADC0804 interfacing LM35 to 89c51 microcontrollerSignal control on ADC0804
1. Make CS = 0 and send a L-to-H pulse to pin WR to start the conversion.
2. Keep monitoring the INTR pin. If INTR is low, the conversion is finished and we can go to the next step. If INTR is high, keep polling until it goes low.
3. After the INTR has become low, we make CS = 0 and send a H-to-L pulse to the RD pin to get the data out of the ADC0804 IC chip.
Note: CS is set to low for both RD and WR pulses.
Write a program to monitor the INTR pin and bring the digital input value into register A. Then call a subroutine to display the input value on a 7-segment display. Do this continuously.
P2.6 = WR (Start conversion needs a L-to-H pulse)
; P2.7 = INTR (When low, end-of-conversion)
; P2.5 = RD (H-to-L will read the data from ADC chip)
; P1.0 – P1.7 = D0 – D7 of the ADC0804
;
MOV P1, #0FFH ; make P1=input
BACK: CLR P2.6 ; WR=0
SETB P2.6 ; WR=1 L-to-H to start conversion
HERE: JB P2.7, HERE ; wait for end of conversion
CLR P2.5 ; conversion finished, enable RD
MOV A, P1 ; read the data
ACALL DATA_DISPLAY ; display the data
SETB P2.5 ; make RD=1 for next round
SJMP BACK
Example of ADC Application
Temperature detection
A temperature sensor (LM34 or LM35) is interfaced to the 8051 via an ADC (ADC0804)
The output voltage from the LM34/LM35 is linearly proportional to the measuring temperature
The ADC0804 converts the output voltages from the LM34/LM35 into digital signals, which correspond to the measured temperature.They are then handled by the 8051
Interfacing with the LM35 (Temperature Sensor)
ADC Application:-
The ADC0804 converts the output voltages from the LM35 into digital signals, which correspond to the measured temperature.
Step size of the ADC0804 = (1.28)x(2)/255 = 0.01004V
Clock input to the ADC0804 = clock frequency / 4
If the following data of LM35 are given
the temperature range of the temperature sensor LM35 is -55C to 150C and its output scale is 10mV/C, and the output value of the ADC0804 is 00H when the LM35 senses -55C
then the value output from the ADC0804 for a measuring temperature 100 C is:











hello i am designing a PID controller and for this i need serial portinterfacing of RS 232c with 89c51. i designed all the cicuitary but idont have much knowledge about interfacing and programming stuffs.can you please send me assembly code for the attached flowchart. ineed it urgently. thank you
ReplyDeleteHi $wati:
ReplyDeleteThe microcontroller project based on 8051 family, you proposed is a nice project, but these detail is not enough, if you want some help from me then plz send complete information of you and your project.
The file you send me is .docx, i can not open it, so plz send .doc file, it is very easy, open the file on your word (MS office) and save it as .doc.
Here we are using AD7521 DAC.
ReplyDeleteHELLO SIR I am sending you pdf format as well as doc format file.please try to see the attached flowchart and please help me sir.thank you
@ $wati
ReplyDeleteok
i will check your project files soon and then i will reply accordingly.
@ $wati
ReplyDeleteThe file you send me have a flow chart only, where is circuit diagram and your project explanation.
you named the file as subroutine, but i donot find any subroutine there.
okkk i need an assembly code for ascii to binary conversion.The total problem is suppose we are receiving 3 characters from serialport of 89c51 and that characters are in ascii format. so i need toconvert these three characters in their binary equivalent.the first two character's binary equivalents will be combined to forma byte and sent to port P1 of DAC 7521 and the nibble equivalent ofthe third character will be sent to the port P3.4 to P3.7. sory but ihave dis much information only. can u help me out. THANK YOU
ReplyDelete@ $wati
ReplyDeletecheck out my blog, you will find some relvent example, if still there is confusion,then ask that point for help or discussion.
Hey,
ReplyDeleteThis is Shraddha, BE EXTC student. I m doing project on application of microcontroller MCF 5213.
Can we do all these projects(based on microcontroller 8051) using microcontroller MCF 5213??
Plz suggest
@ Shraddha
ReplyDeletePlz send more details of your project based on microcontroller 8051 family. What you want to develop or fabricate using microcontroller.
@ Shraddha
ReplyDeletePlz send more details of your project based on microcontroller 8051 family. What you want to develop or fabricate using microcontroller.