Membuat Voltmeter Digital menggunakan fitur Analog to Digital Converter (ADC) ATmega8 dengan program Dev C++

 


Pada percobaan kali ini akan membuat sebuah voltmeter digital menggunakan nilai tegangan analog yang berasal dari potensiometer yang dihubungkan ke channel ADC 0 pada mikrokontroler ATmega8. Kemudian data akan dikonversikan ke tegangan dengan rentang 0 – 5 volt.

Pada percobaan ini saya akan menghubungkan LCD dengan port D dan potensiometer sebagai input analognya saya hubungkan dengan channel ADC0 yaitu pada port C0.

Berikut ini adalah skematik yang saya buat pada proteus.
Rrangkaian: Volt Meter AC


/*****************************************************

CodeWizardAVR V2.05.0 Advanced

Project : Voltmeter digital

Version : 

Date    : 18/04/2021

Author  : Arief Zazuli

Company : http://anotherorion.com

*****************************************************/

#include <mega16.h>

#include <delay.h>

#include <alcd.h>

#include <stdio.h>

#define ADC_VREF_TYPE 0x00

unsigned int read_adc(unsigned char adc_input)

{

ADMUX=adc_input | (ADC_VREF_TYPE & 0xff);

delay_us(10);

ADCSRA|=0x40;

while ((ADCSRA & 0x10)==0);

ADCSRA|=0x10;

return ADCW;

}

char buff[33];

int masukan;

float hitung;

void main(void)

{

ADMUX=ADC_VREF_TYPE & 0xff;

ADCSRA=0xA1;

SFIOR&=0x1F;

lcd_init(16);

while (1)

      {

      lcd_gotoxy(0,0);

      lcd_putsf("V meter digital");

      masukan = read_adc(0);

      hitung = (float) masukan*5/1024;

      sprintf(buff," V input : %0.2f", hitung);

      lcd_gotoxy(0,1);

      lcd_puts(buff);

      delay_ms(100);

      lcd_clear();

      }

}



untuk lebih lengkap nya download di sini

Share:

Tidak ada komentar:

Posting Komentar

text

INDRA APRIYANI

Popular Posts

profile

INDRA APRIYANI
Biodata :
Lahir 04 Agustus 2000

pendidikan :
SDN Majasari 1
MTsN Denanyar jombang
MASS tebuireng Jombang
Universitas Wiralodra