MODUL 8 Analog Digital Converter (ADC)

dokumen-dokumen yang mirip
REFS0-1 (Reference Selection Bits) REFS0-1 adalah bit-bit pengatur mode tegangan referensi ADC.

I. Pendahuluan. II. Tujuan. III. Gambaran Disain. MODUL 6 Meter Cahaya Digital

PELATIHAN: Pemrograman Mikrokontroler Tipe AVR bagi Guru-guru SMK

Perbandingan Waktu Konversi antara ADC 8 bit dan 10 bit dalam Mikropengendali ATMega8535

ADC Analog-to-Digital Converter. Kuliah #9 TCK210 Teknik Interface dan Peripheral

Interfacing. Materi 6: ADC, DAC & Sensor Interfacing. Disusun Oleh: I Nyoman Kusuma Wardana

BAB II DASAR TEORI Bentuk Fisik Sensor Gas LPG TGS 2610 Bentuk fisik sensor TGS 2610 terlihat pada gambar berikut :

LAMPIRAN. #include <mega16.h> //menambahkan library atmega16 #include <delay.h> //menambahkan library delay #define ADC_VREF_TYPE 0x40

MODUL 5 APLIKASI DISPLAY LCD

Listing Program. // Declare your global variables here

Standar Operasional Prosedur Alat

Mikrokontroler AVR. Hendawan Soebhakti 2009

BAB 3 PERANCANGAN ALAT. Rangkaian Catu daya (Power Supply Adaptor) ini terdiri dari satu keluaran, yaitu 5

Kajian Pustaka. Spesifikasi - Krisbow KW Fitur - Krisbow KW06-290

BAB II LANDASAN TEORI

BAB II LANDASAN TEORI

DAFTAR ISI. Daftar Pustaka P a g e

Tabel Data Pengujian 5x Perubahan Posisi. Kanan (V) Kiri (V)

MICROCONTROLER AVR AT MEGA 8535

MIKROKONTROLER ATMEGA BERBASIS CODEVISION AVR (ADC DAN APLIKASI TERMOMETER) dins D E P O K I N S T R U M E N T S

Gambar 4.1 Rangkaian keseluruhan

LAMPIRAN. A. Pembuatan Minimun system dan Penanaman Program 1. Rangkaian Minimum System yang telah dilarutkan, di bor dan dipasang komponen

BAB II LANDASAN TEORI

Oleh Ilmin Syarif Hidayatullah ( ) Pembimbing : Andi Rahmadiansah, ST, MT

LAMPIRAN. Lay Out Minimum Sistem dengan ATMega8

BAB III METODOLOGI PENELITIAN. Berikut alat dan bahan yang digunakan. Bahan yang digunakan pada pembuatan dan penelitian ini adalah:

LAMPIRAN A RANGKAIAN LENGKAP dan FOTO PENGUAT KELAS D

DAFTAR PUSTAKA. Universitas Sumatera Utara

BAB 3 PERANCANGAN SISTEM

BAB 4 HASIL DAN PEMBAHASAN

DT-AVR Application Note

Clamp-Meter Pengukur Arus AC Berbasis Mikrokontroller

LAMPIRAN A. Gambar A. Layout alat tongkat tunanetra. Ubiversitas Sumatera Utara

BAB IV PENGUJIAN ALAT DAN ANALISA

Pulsa = Frekuensi * 60/20 ; atau Pulsa = frekuensi*30;

MICROCONTROLER AVR AT MEGA 8535

Sistem Mikrokontroler FE UDINUS

PENGAMAN MOTOR LISTRIK 3 PHASA DENGAN SENSOR SUHU IC LM 35

TUGAS AKHIR PENDETEKSI KEBOCORAN TABUNG GAS DENGAN MENGGUNAKAN SENSOR GAS FIGARRO TGS 2610 BERBASIS MIKROKONTROLER ATMEGA 8535

LAMPIRAN A PROGRAM CODE VISION AVR

BAB II TINJAUAN PUSTAKA. Tabel 2.1 Kandungan udara berkualitas NO Kandungan Gas Persentase

ALAT PENAKAR BERAT BERBASIS MIKROKONTROLER

Sistem Minimum Mikrokontroler. TTH2D3 Mikroprosesor

BAB III METODE PENELITIAN

PRAKTIKUM MIKROPROSESSOR PTE-408 PRODI S1 PENDIDIKAN TEKNIK ELEKTRO PETUNJUK PRAKTIKUM DYAH LESTARI

BAB II LANDASAN TEORI

CLAMP-METER PENGUKUR ARUS AC BERBASIS MIKROKONTROLER TUGAS AKHIR

BAB II LANDASAN TEORI

I. Pendahuluan. II. Tujuan. III. Gambaran Disain. MODUL 7 Monitoring Suhu dan Cahaya ke PC

BAB III PERANCANGAN SISTEM

OHMMETER DIGITAL BERBASIS MICROCONTROLLER

BAB III PERANCANGAN DAN PEMBUATAN SISTEM. perangkat keras maupun perangkat lunak yang meliputi:

BAB III TEORI PENUNJANG. Microcontroller adalah sebuah sistem fungsional dalam sebuah chip. Di

ADC (Analog to Digital Converter)

ANALOG TO DIGITAL CONVERTER

UNIVERSITAS INDONESIA RANCANG BANGUN PERANGKAT PENGUJI CATU DAYA PERSONAL COMPUTER TIPE ATX SKRIPSI DIKA SETIAWAN

Gambar 3.1 Blok Diagram Timbangan Bayi

ROBOT PENGANTAR BARANG OTOMATIS BERBASIS MIKROKONTROLER AVR ATMEGA16

BAB III METODOLOGI PENELITIAN. dengan suhu dan timer berbasis mikrokontroler ATMega8535, dapat

BAB IV HASIL DAN UJI COBA

BAB III METODOLOGI PENELITIAN

BAB II LANDASAN TEORI

Apa itu timer/counter?

BAB II LANDASAN TEORI

BAB II KONSEP DASAR PERANCANGAN

BAB III PERANCANGAN SISTEM

BAB II DASAR TEORI. pendengaran manusia, Light Dependent Resistor (LDR), mikrofon kondenser, tapis

BAB III PERANCANGAN ALAT PENYIMPANAN DATA KECEPATAN ANGIN, ARAH ANGIN DAN SUHU

BAB II LANDASAN TEORI

Penerima Remote SONY dengan ATmega32

AD Channel AD Conversion

BAB 2 TINJAUAN PUSTAKA

BAB 2 LANDASAN TEORI. Mikrokontroler AVR (Alf and Vegard s RISC Processor) dari Atmel ini

PRAKTIKUM III Robot Line Follower Sederhana

BAB II LANDASAN TEORI

BAB II TINJAUAN PUSTAKA. Atmel AVR adalah jenis mikrokontroler yang paling sering dipakai dalam

MENGAKSES MOTOR SERVO

BAB III METODE PENELITIAN. Penelitian ini menggunakan metode eksperimen, yaitu membuktikan hasil

BAB III RANCANG BANGUN SISTEM KARAKTERISASI LED. Rancangan sistem karakterisasi LED diperlihatkan pada blok diagram Gambar

Laboratorium Dasar Teknik Elektro - Sekolah Teknik Elektro dan Informatika ITB Abstrak

BAB II LANDASAN TEORI

Pengenalan Bahasa C. 1. Struktur penulisan program. #include < [library2.h] > #define [nama2] [nilai] ;

MENGENAL MIKROKONTROLER ATMEGA-16

ANTAR MUKA DST-51 DENGAN MODUL AD-0809

JOBSHEET VII MENGGUNAKAN INTERRUPT DALAM MIKROKONTROLLER ATMEGA8535

BAB II LANDASAN TEORI

JAM DIGITAL 2.2 REGISTER TCNT, TIMSK, OCR, DAN TIFR 1. PENDAHULUAN 2. STUDI PUSTAKA 2.1 CLOCK DAN PRESCALER 3. METODOLOGI 3.

TUGAS MATAKULIAH APLIKASI KOMPUTER DALAM SISTEM TENAGA LISTRIK FINAL REPORT : Pengendalian Motor DC menggunakan Komputer

BAB III PERANCANGAN SISTEM

$'&$QDORJWR'LJLWDO&RQYHUWLRQ

Gambar 2.7. Susunan pin mikrokontroler ATMega8535 Berikut ini adalah tabel penjelasan mengenai pin yang terdapat pada mikrokontroler ATMega8535:

SISTEM KONTROL PENGUKUR KADAR ALKOHOL PADA CAIRAN BERBASIS MIKROKONTROLER ATMEGA8535

RANCANG BANGUN SISTEM PENURUN TEGANGAN (STEP DOWN CONVERTER) DENGAN SOLAR SEL SEBAGAI SUMBER BERBASIS MIKROKONTROLLER ATMEGA 8535 SKRIPSI

Transkripsi:

MODUL 8 Analog Digital Converter (ADC) AVR ATMega16 merupakan tipe AVR yang telah dilengkapi dengan 8 saluran ADC internal dengan resolusi 10 bit. Dalam mode operasinya, ADC dapatdi konfigurasi, baik single ended input maupun differential input. Selain itu, ADC ATMega16 memiliki konfigurasi pewaktuan, tegangan referensi, mode operasi, dan kemampuan filter derau (noise) yang amat fleksibel sehingga dapat dengan mudah disesuaikan dengan kebutuhan dari ADC itu sendiri. ADC pada ATMega16 memiliki fitur-fitu rantara lain : Resolusi mencapai 10-bit Akurasi mencapai 2 LSB Waktu konversi 13-260μs 8 saluran ADC dapat digunakan secara bergantian Jangkauan tegangan input ADC bernilai dari 0 hingga VCC Disediakan 2,56V tegangan referensi internal ADC Mode konversi kontinyu atau mode konversi tunggal Interupsi ADC complete Sleep Mode Noise canceler Proses inisialisasi ADC meliputi proses penentuan clock, tegangan referensi, formal data keluaran, dan modus pembacaan. Register-register yang perlu diatur adalah sebagai berikut: Register Terkait ADC ADC Control and Status Register A ADCSRA ADCSRA ADEN ADSC ADATE ADIF ADIE ADPS2 ADPS1 ADPS0 R/W Initial Value R/W R/W R/W R/W R/W R/W R/W R/W 0 0 0 0 0 0 0 0 Keterangan ADEN: ADC Enable 1 = adc enable, 0 = adc disable ADSC: ADC Start Conversion 1 = mulai konversi, 0 = konversi belum dilakukan ADATE: ADC Auto Trigger Enable 1 = auto trigger diaktifkan, trigger berasal dari sinyal yang dipilih (set pada trigger SFIOR bit ADTS). ADC akan start konversi pada edge positif sinyal trigger. 1 P o l i t e k n i k J a m b i

ADIF: ADC Interrupt Flag disetke 1, jika konversi ADC selesai dan data register ter-update. ADIF akan diset 1 secara hardware jika Interrupt ADC atau bit ADIE di aktifkan. ADIE: ADC Interrupt Enable diset 1 dan Interrupt ADC akan aktif jika Bit I (Interrupt Enable) pada register SREG diaktifkan atau dapat menggunakan subrutinsei() untuk meng-enablekan Interrupt. ADPS2:0: ADC Prescaler Select Bits Bit pengatur clock ADC, faktorpembagi 0 7 = 2, 4, 8, 16, 32, 64, 128. ADPS2 ADPS1 ADPS0 Division Factor 0 0 0 1 0 0 1 2 0 1 0 4 0 1 1 8 1 0 0 16 1 0 1 32 1 1 0 64 1 1 1 128 ADMUX (ADC Multiplexer) ADMUX REFS1 REFS0 ADLAR MUX4 MUX3 MUX2 MUX1 MUX0 R/W Initial Value R/W R/W R/W R/W R/W R/W R/W R/W 0 0 0 0 0 0 0 0 REFS1:0: Reference Selection Bits REFS1 REFS2 Voltage Reference Selection 0 0 AREF, Internal Vref Turned Off 0 1 VCC with external capacitor at AREF Pin 1 0 Reserved 1 1 Internal 2.56 V Voltage Reference With External Capasitor at Aref ADLAR: ADC Left Adjust Result Untuk setting format data hasil konversi ADC. ADLAR = 0 - - - - - - ADC9 ADC8 ADCH ADC7 ADC6 ADC5 ADC4 ADC3 ADC2 ADC1 ADC0 ADCL 2 P o l i t e k n i k J a m b i

ADLAR = 1 ADC9 ADC8 ADC7 ADC6 ADC5 ADC4 ADC3 ADC2 ADCH ADC1 ADC0 - - - - - - ADCL MUX4:0: ADC Channel Selection Special Function IO Register-SFIOR SFIOR merupakan register 8 bit pengatur sumber picu konversi ADC, Apakah dari sumber picu eksternal atau dari sumber picu internal, susunannya seperti yang terlihat pada gambar berikut: ADTS2 ADTS1 ADTS0 ADHSM ACME PUD PSR2 PSR10 ADTS[0...2] : Pemilihan trigger (pengatur picu) untuk konversi ADC, bit-bit ini akan berfungsi jika bit ADATE pada register ADCSRA bernilai 1. Konfigurasi bit ADTS[0...2] dapat dilihat pada table berikut: 3 P o l i t e k n i k J a m b i

ADTS2 ADTS1 ADTS0 Trigger Source 0 0 0 Free Running (manual) 0 0 1 Analog Comparator 0 1 0 External Interrupr Request 0 0 1 1 Timer/Counter0 Compare Match 1 0 0 Timer/Counter0 Overflow 1 0 1 Timer/Counter Compare Match B 1 1 0 Timer/Counter1 Overflow 1 1 1 Timer/Counter1 Capture Event Register ADCW merupakan register data yang menyimpan data hasil konversi ADC. Untuk memilih channel ADC mana yang digunakan(single ended atau diferensial),dapat dilakukan dengan mengatur nilai MUX4 :0. Misalnya channel ADC0 sebagai input ADC, makamux4 :0 diberinilai 00000B, informasi lebih lengkap dapat di lihat pada datasheet. Tegangan referensi ADC dapat dipilih antara lain pada pin AREF, pin AVCC atau menggunakan tegangan referensi internal sebesar 2.56V. Setelah konversi selesai (ADIF high), hasil konversi dapat diperoleh pada register hasil (ADCL, ADCH). Untuk konversi single ended, hasilnya ialah Dimana V IN ialah tegangan pada input yang dipilih dan V REF merupakan tegangan referensi. Jika hasil ADC =000H, maka menunjukkan tegangan input sebesar 0V, jika hasil ADC=3FFH menunjukkan tegangan input sebesar tegangan referensi dikurangi 1 LSB. Sebagai contoh, jika diberikan V IN sebesar 0.2V dengan VREF 5V, makahasil konversi ADC ialah 41 4 P o l i t e k n i k J a m b i

Komponen Yang Digunakan : AplikasiVoltmeter Digital dan Display LCD RangkaianAplikasiVolmeter Digital 5 P o l i t e k n i k J a m b i

Program Aplikasi ADC - Voltmeter Digital #include <mega16.h> #include <delay.h> #include <stdlib.h> #include <string.h> typedef unsigned char ubyte; typedef unsigned int uint; ubyte adc_channel = 0; ubyte RS0E0 = 0b00000000; ubyte RS0E1 = 0b00000100; ubyte RS1E0 = 0b00000001; ubyte RS1E1 = 0b00000101; ubyte str_adc[16]; float vin; float vref = 5; uint read_adc(); void init_port(); void init_lcd(); void init_adc(); void kirim_karakter(ubyte); void kirim_instruksi(ubyte); void main() { Uint adc =0; ubyte i = 0; init_port(); init_lcd(); init_adc(); while(1){ adc = read_adc(); vin = (float)adc * vref/1024; ftoa(vin,2,str_adc); kirim_instruksi (0x01); kirim_instruksi (0x80); for(i = 0; i <strlen(str_adc);i++){ if (str_adc[i]!=0){ kirim_karakter(str_adc[i]); kirim_karakter(' '); kirim_karakter('v'); kirim_karakter('o'); kirim_karakter('l'); kirim_karakter('t'); delay_ms(100); 6 P o l i t e k n i k J a m b i

uintread_adc() { delay_ms(5); // Start the AD conversion ADCSRA =0b01000000; // Wait for the AD conversion to complete while ((ADCSRA & 0x10)==0); ADCSRA =0b00010000; //ADIF diset1, conversion stop return ADCW; voidinit_port(){ DDRB = 0xFF; DDRC = 0xFF; DDRD = 0xFF; DDRA = 0x00; voidinit_adc(){ ADMUX = 0b00000000 adc_channel ; ADCSRA = 0b10000011; voidinit_lcd(){ kirim_instruksi(0x01); kirim_instruksi(0x38); kirim_instruksi(0x06); kirim_instruksi(0x0c); kirim_instruksi(0x80); voidkirim_karakter(ubyte PORTC = RS1E0; PORTD = karakter; delay_ms(1); PORTC = RS1E1; delay_ms(1); PORTC = RS1E0; karakter){ voidkirim_instruksi(ubyte instruksi){ PORTC = RS0E0; PORTD = instruksi; delay_ms(1); PORTC = RS0E1; delay_ms(1); PORTC = RS0E0; 7 P o l i t e k n i k J a m b i

Langkah-langkah membaca data ADC (mode free running channel 0) : 1. Atur register ADMUX = 0x00sebagai proses inisialisasi ADC REFS1 REFS0 ADLAR MUX4 MUX3 MUX2 MUX1 MUX0 0 0 0 0 0 0 0 0 REFS1 =0 dan REFS0 = 0 Voltage Reference :AREF, Internal Vref Turned Off ADLAR = 0 - - - - - - ADC9 ADC8 ADCH ADC7 ADC6 ADC5 ADC4 ADC3 ADC2 ADC1 ADC0 ADCL MUX4:MUX0 = 00000 ADC single Ended Input ADC channel 0 2. Kemudian atur nilai register ADCSRA = 0b10000011 ADEN ADSC ADATE ADIF ADIE ADPS2 ADPS1 ADPS0 1 0 0 0 0 0 1 1 ADEN: 1 => ADC Enable ADSC: 0 =>KonversiBelumdilakukan ADATE: 0 => Auto Trigger disable ADIF: 0 =>Konversibelumdilakukanflag status masih 0 ADIE: 0 =>ADC Interrupt Disable ADPS2-0: 011 =>ADC Prescalerfactor pembagi clock = 8 3. Atur bit ADSC (bit 6)pada register ADCSRA menjadi logika 1 untuk memulai konversi data ADC, proses ini dilakukan menggunakan perintahberikut : ADCSRA = 0b01000000 ( register ADCSRA di-or kandengan 0b01000000) 4. Tunggu sampai bit ADIF (bit 4) berubah menjadi logika 1 sebagai tanda konversi data ADC selesai. 5. Setelah itu set bit ADIF(bit 4) ke logika 1 agar konversi data berhenti (stop). Proses ini dilakukan dengan perintahberikut: ADCSRA = 0b00010000 ( register ADCSRA di-or kandengan 0b00010000) 6. Kemudian data hasil konversi (10 bit) akan tersimpan pada register ADCW 7. Nilaitegangan analog dapat diperoleh dengan menggunakan rumus berikut: ( ) 8 P o l i t e k n i k J a m b i