Digital voltmeter using 89c51 microcontroller

Sayleejoshi1 982 views 13 slides Mar 09, 2017
Slide 1
Slide 1 of 13
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10
Slide 11
11
Slide 12
12
Slide 13
13

About This Presentation

Voltmeter is a voltage measuring instrument.
We can measure the potential difference between any two points in an electrical network using voltmeter. 
There are two types of voltmeter as analog voltmeter and digital voltmeter.
Analog voltmeter moves pointer on a scale but it has some limitations...


Slide Content

DIGITAL VOLTMETER USING 89C51 MICROCONTROLLER Guide, Prof. S. A. Karmude By, Saylee S. Joshi

INTRODUCTION Voltmeter is a voltage measuring instrument. We can measure the potential difference between any two points in an electrical network using voltmeter.  There are two types of voltmeter as  analog voltmeter and digital voltmeter. Analog voltmeter moves pointer on a scale but it has some limitations like accuracy of few percent of full scale. Digital voltmeter can display numerical value of voltage on a display by use of analog to digital converter (ADC). All the data processing and manipulating is in digital form, so it is very essential to use ADC.

Cont…. We have used ADC0804 analog -to-digital converter IC. The range of input voltage is 0-15V. Here the input voltage should be DC voltage so as to get the steady output on the LCD display. If you give the AC voltage as an input, it will display continuously running numbers as the nature of AC voltage.

Block Diagram

Components Required For Digital Voltmeter Using 89c51 Microcontroller Microcontroller,  AT89C51 Analog ‐to‐Digital  Converter,  ADC0804 16×1  LCD Oscillator  circuit  for  the  microcontroller 12MHz  Crystal  Capacitor 33pF  Capacitors Voltage  divider  circuit/  Input  terminals 200k,  100k  Resistors 100nF  Capacitor ADC  Clock  Circuit  100k  Potentiometer  (to  adjust  the  back‐light  of  the  LCD) 10k  Resistor 150pF  Capacitor 100k  Potentiometer  (to  adjust  the  back‐light  of  the  LCD)

Circuit Diagram Of Digital Voltmeter Using 89c51 Microcontroller

Lcd Pin Diagram Pin no. Name Description 1 Vss Ground 2 Vdd +5V 3 Vee Contrast  Adjustment   ‐ 2V  to   ‐ 5 V 4 RS Register  Select 5 RW 1   ‐ Read  ,  0 ‐  Writ e 6 E Enable  Strobe 7 D0 Data  Line 8 D1 Data  Line 9 D2 Data  Line 10 D3 Data  Line 11 D4 Data  Line 12 D5 Data  Line 13 D6 Data  Line 14 D7 Data  Line 15 LED+ Backlit  LED  +V   Vdd  (Optional  signal) 16 LED ‐ Backlit  LED  –V    Vss  (Optional  signal)

Components 8051 Based Controller: 1 ADC0804: 1 LCD 16x1: 1 Potentiometer 10K: 1 Resistor 10K: 2 Resistor 200K: 1 Resistor 100K: 1 Capacitor 33pF: 2 Capacitor 10uF: 1 Capacitor 150pF: 1 Capacitor 100nF: 1 Crystal 12Mhz: 1

C Program For Digital Voltmeter Using 89c51 Microcontroller #include <REGX51.H> #include " lcd.h " #define adc_port P1              //ADC Port #define rd P3_7                  //Read signal P3.7 #define wr P3_6                  //Write signal P3.6 #define cs P3_5                  //Chip Select P3.5 #define intr P3_4                //INTR signal P3.4 void conv ();                     //Start of conversion function void read();                     //Read ADC function unsigned int adc_avg,adc ; void main(){ char i ; LCD_INI(); while(1){                                                              //Forever loop adc_avg = 0; for( i =0;i<10;i++){ conv ();                  //Start conversion read();                  //Read ADC adc_avg += adc ; } adc_avg = adc_avg /10; wrt_cmd (0x80); wrt_string ("V(DC): "); adc = adc_avg * 59; hex2lcd((unsigned char)( adc /1000));

Cont…. wrt_data ('.'); adc = adc%1000; hex2lcd((unsigned char)( adc /10)); wrt_data ('V'); } } void conv (){ cs = 0;                       //Make CS low wr = 0;                    //Make WR low wr = 1;                  //Make WR high cs = 1;                //Make CS high while( intr ); //Wait for INTR to go low } void read() { cs = 0;                       //Make CS low rd = 0;                     //Make RD low adc = adc_port ; //Read ADC port rd = 1;                  //Make RD high cs = 1;                  //Make CS high }

Advantages This system is used to measure the voltage in low voltage applications. Used to measure the toy batteries. We can measure the physical quantities like temperature, humidity, gas etc. using this system with a little modification.

 disadvantages The input analog voltage range should be 0 to 5V. Using this system we can measure only one analog input value at a time.