Anda di halaman 1dari 35

ABSTRAK

Multimeter yang selama ini digunakan masih terbatas pada sistem pembacaan analog saja. Dengan kondisi yang demikian ini factor human error atau

subyektifitas pembacaan oleh manusia sangat dominan, maka tidak jarang bila data yang dihasilkan tidak sesuai kondisi sebenarnya. Berkaitan dengan hal tersebut, makalah ini menjelaskan tentang perancangan multimeter dengan tampilan display seven segment dual channel. Secara umum multimeter dengan output display seven segment ini menggunakan system mekanik dan peralatan yang digunakan pada

multimeter analog yang selama ini berkembang. Untuk proses penampilan secara display pada alat ini menggunakan ADC ICL7135 sebagai pengolah data analog menjadi digital yang kemudian dialamatkan oleh IC mikrokontroler AT89C52 sehingga dapat ditampilkan oleh IC MAX7219 berupa display ke seven segment.

KATA PENGANTAR

Puji syukur kehadirat Tuhan Yang Maha Esa atas segala karunia dan kemurahan-Nya, sehingga penulis dapat menyelesaikan program dan laporan tugas matakuliah PFSE ini. Tugas matakuliah ini disusun untuk memenuhi kewajiban sebagai syarat tugas praktikum PFSE pada Politeknik Negeri Bandung Jurusan Teknik Elektro Program Studi Teknik Elektronika. Dalam menyelesaiakan tugas ini, penulis mendapat bantuan dari berbagai pihak. Dan penulis pun mengucapkan banyak terimaksih kepada semua yang membantu pada proses pengerjaan tugas ini. Penulis mengharapkan Laporan Tugas Mata kuliah PFSE ini dapat bermanfaat bagi semua pihak yang membacanya, walaupun penulis menyadari bahwa laporan tugas ini masih banyak kekurangan masih jauh dari kata sempurna. Karena itu segala kritik dan saran sangat kami harapkan demi perbaikan Laporan Tugas ini.

Bandung, 16 Mei 2013

Penulis

BAB I PENDAHULUAN

1.1 Latar Belakang

Saat ini semua peralatan yang menunjukan

indikator terhadap suatu

besaran fisik diproduksi untuk peningkatan kualitas pelayanan dengan lebih cepat dan baik. Secara spesifik peralatan elektronika saat ini khususnya piranti ukur masih

terbatas pada sistem pembacaan analog saja, sehingga hanya orang-orang tertentu yang pernah mempelajari metode pengukuran saja yang dapat membacanya. Berawal dari latar belakang ini membuat ketertarikan penulis untuk merancang alat ukur khususnya volt dan ohm meter dengan display seven segmen dual channel, sehingga semua orang tahu dengan mudah pembacaan yang dilakukan oleh alat ukur hanya melalui display seven segmen dual channel. Dengan system yang diusulkan ini dimaksudkan alat ukur Volt-Ohm meter bisa menjangkau bagi semua kalangan masyarakat yang belum bisa membaca terhadap suatu pembacaan alat ukur yaitu dengan menampilkan suatu hasil pengukuran dengan display seven segmen dual channel. Multimeter dengan output display seven segmen dirancang dengan

menggunakan mekanik dan sistem dari multimeter analog yang yang sudah beredar dipasaran sedangkan untuk menampilkannya dalam bentuk display seven segmen, keluaran multimeter ini diolah terlebih dahulu menjadi besaran digital melalui ADC dan diolah secara asembler melalui mikrokontroller, sedangkan untuk ouput display digunakan IC MAX 7219. Diharapkan dengan metode yang diusulkan ini alat ini bermanfaat bagi semua kalangan masyarakat dan mampu dikembangkan dengan

kualitas yang lebih baik.

1.2 Tujuan dan Manfaat

Realisasi alat ini mempunyai tujuan terhadap jangkauan yang luas untuk mencapai semua kalangan pengguna peralatan Voltmeter digital Dual Channel DC, bahkan tidak terbatas pada orang-orang tertentu saja yang telah mengenal metode pengukuran listrik. Selain itu kontribusi alat ini diharapkan semakin luas

sehingga kalangan masyarakat yang belum bisa membaca alat ukur listrik bisa mengerti dengan mudah mengenai nilai-nilai besaran listrik atau elektronika yang diukur. Dengan aplikasi alat ini diharapkan mempunyai manfaat yang lebih baik untuk meningkatkan kualitas pembacaan alat ukur sehingga meminimalis kesalahan pembacaan seseorang karena kelelahan mata dalam membaca alat ukur. Sebab tanpa harus membacapun alat ini sudah mengeluarkan tampilan pada seven segmen yang hasil pengukurannya bisa langsung dilihat.

1.3 Rumusan Masalah

Dalam proses penyelesaian Laporan Tugas ini dilaksanakan dalam dua pelaksanaan kegiatan yaitu penyelesaian perancangan alat dan penyelesaian Laporan Tugas ini. Dalam kedua proses pelaksanaan kegiatan tersebut masing-masing

permasalahan dibatasi, untuk penyelesaian perancangan alat tugas akhir permasalahan dibatasi pada keluarnya tampilan dari d i s p l a y s e v e n s e g m e n alat ini dalam melakukan pembacaan terhadap kalibrasi yang diberikan. Sedangkan pada proses penyelesaian laporan permasalahan dibatasi pada analisa sederhana mengenai cara kerja dan ketidaktepatan pembacaan alat ukur setelah melalui proses pengujian secara kuantitatif terhadap kualitas pembacaan alat ini.

BAB II KAJIAN TEORI

2.1 Voltmeter Volt meter dibedakan menjadi dua jenis yaitu untuk pengukuran tegangan AC dan untuk pengukuran tegangan DC. berlaku metode pembacaan Pada kedua jenis pengukuran tegangan ini yang membedakan adalah perlunya

yang sama,

dipasang sebuah dioda penyearah setengah dan filter kapasitor pada sistem pembacaan tegangan DC. Dari sini dihasilkan tegangan DC yang nilainya sebesar

Hasil pembacaan tegangan DC tersebut kemudian dilewatkan melalui rangkaian penggali pada sistem volt meter sehingga menghasilkan kembali nilai AC yang diukur.

Dengan menghubungkan suatu tahanan seri terhadap kumparan putar dari alat ukur, maka akan menghasilkan pengukuuran tegangan sebab dengan metode ini arus akan secara langsung masuk pada kumparan putar, sehingga akan mengubah gerakan dArsonal menjadi pengukur tegangan. Sehingga pada prinsipnya volt meter mengukur beda potensial antara dua titik tegangan dalam sebuah rangkaian arus. Sedangkan untuk menghasilkan pengukuran tegangan pada range yang lebih lebar dilakukan dengan menambahkan tahanan pengali diatas dengan sebuah saklar (range switch). Metode ini juga sering disebut rangkaian shunt ayrton,

pengukuran dilakukan dengan mengalikan beberapa tegangan secara paralel.


5

2.2 ADC ICL7135

Spesifikasi ICL7135

1. Membaca Nol untuk 0-V input 2. Presisi Null Deteksi Dengan Polaritas Benar di Nol 3. 1-pA arus tipikal input 4. Diferensial input benar 5. Multiplexing Binary Coded-Decimal-(BCD)output 6. Roll over Rendah Kesalahan: 1 Jumlah Max
6

7. Sinyal control Memungkinkan WUARTs Interfacing atauMikroprosesor 8. Auto ranging Kemampuan Dengan Over-Under-Range Sinyal 9. TTL-Kompatibel Output 10. Langsung Penggantian untuk Teledyne TSC7135, 11. Intersil ICL7135, ICL7135 Maxim, dan 12. Siliconix Si7135 13. Teknologi CMOS

Konverter ICL7135C dan TLC7135C diproduksi dengan teknologi CMOS Texas Instruments yang sangat efisien. Ini 4 1/2-digit, dual-slope-mengintegrasikan, analogke-digital converter (ADC) yang dirancang untuk menyediakan antarmuka untuk ke dua mikroprosesor dan tampilan visual. Angka-drive output D1 melalui D4 dan multiplexing kode-biner-desimal output B1 , B2, B4, dan B8 menyediakan sebuah interface untuk LED atau LCD decoder / driver serta mikroprosesor. ICL7135C dan TLC7135C menawarkan 50-ppm (satu bagian dalam 20.000) resolusi dengan kesalahan linearitas maksimum satu hitungan.Kesalahan nol adalah kurang dari 10 V dan nol penyimpangan kurangdari 0,5V / C. Sumber-impedansi kesalahan diminimalisir dengan input rendah saat ini (kurangdari 10 pA). Kesalahan roll over terbatas 1 hitungan. Rentang input + /-1.9999V dengan sensitivitas 100 uV. ICL7135 menyediakan output BCD multiplexing dan sinyal strobe (STRB). The STROBE, BUSY, RUN / HOLD, LEBIH RANGE, dan UNDER RANGE sinyal control mendukung mikroprosesor berbasis system pengukuran. Sinyal control juga dapat mendukung system akuisisi data jarak jauh dengan transfer data melalui pemancar penerima asynchronous universal (UART). ADC ICL7135C dan TLC7135C ditandai untuk operasi dari 0 C sampai 70 C.

2.3 Dasar Mikrokontroller AT89C52 Mikrokontroller tipe Atmel AT89S52 termasuk kedalam keluarga MCS51 merupakan suatu mikrokomputer CMOS 8-bit dengan daya rendah, kemampuan tinggi, memiliki 8K byte Flash Programable and Erasable Read Only Memory (PEROM). Perangkat ini dibuat menggunakan teknologi memori nonvolatile (tidak kehilangan data bila kehilangan daya listrik). Set instruksi dan kaki keluaran AT89S52 sesuai dengan standar industri 80C51 dan 80C52. Atmel AT89S52 adalah mikrokomputer yang sangat bagus dan fleksibel dengan harga yang rendah untuk banyak aplikasi sistem kendali.

Fasilitas yang terdapat dalam AT89S52 antara lain: 1. Sesuai dengan produk-produk MCS-51. 2. Terdapat memori flash yang terintegrasi dalam sistem. Dapat ditulis ulang hingga 1000 kali. 3. Beroperasi pada frekuensi 0 sampai 24MHz. 4. Tiga tingkat kunci memori program. 5. Memiliki 256 x 8 bit RAM internal. 6. Terdapat 32 jalur masukan/keluaran terprogram. 7. Tiga pewaktu/pencacah 6-bit (untuk 52) & dua pewaktu/pencacah 16-bit (untuk51) 8. Delapan sumber interupsi(untuk 52) & 6 untuk 51 9. Kanal serial terprogram. 10. Mode daya rendah dan mode daya mati.

Konfigurasi Mikrokontroller AT89C52 Mikrokontroller keluarga MCS 51 memiliki port-port yang lebih banyak (40 port I/O) dengan fungsi yang bisa saling menggantikan sehingga

mikrokontroller jenis ini menjadi sangat digemari karena hanya dalam sebuah chip sudah bisa mengkafer untuk banyak kebutuhan. Konfigurasi dan Deskripsi kaki-kaki mikrokomputer AT89x5x adalah sebagai berikut:

Gambar 2.12 Konfigurasi Kaki Mikrokomputer AT89C52.

Port 0

Port 0 adalah port dua arah masukan/keluaran 8-bit saluran terbuka. Sebagai port keluaran, tiap kaki dapat menerima masukan TTL. Ketika logika 1 dimasukkan ke kaki-kaki port 0, kaki-kaki dapat digunakan sebagai masukan impedansi tinggi. Port 0 juga dapat diatur sebagai bus alamat/data saat mengakses program dan data dari memori luar. Pada mode ini port 0 memiliki pull-up internal. Port 0 juga menerima byte-byte kode saat pemprograman Flash dan mengeluarkan byte kode saat verifikasi. Pull-up eksternal diperlukan saat

memverifikasi program.

Port 1

Port 1 adalah port dua arah masukan/keluaran 8-bit dengan pull-up internal. Sebagai tambahan, P1.0 dan P1.1 dapat diatur sebagai pewaktu/ pencacah-2 eksternal masukan pencacah (P1.0/T2) dan pewaktu/pencacah-2 masukan pemicu (P1.1/T2EX). Port 1 juga menerima byte-byte alamat saat pemrograman dan verifikasi flash.

Port 2

Port 2 adalah port masukan/keluaran dua arah 8-bit dengan internal pull- up. Port 2 juga menerima bit-bit alamat dan beberapa sinyal kendali saat pemrograman dan verifikasi flash.

Port 3 Port 3 adalah port masukan/keluaran dua arah 8-bit dengan internal pull- up. Port 3 juga menyediakan fasilitas berbagai fungsi khusus dari AT89C51. Port 2 juga menerima beberapa sinyal kendali saat pemrograman dan verifikasi flash. 3 RST Masukan reset. Masukan tinggi pada kaki ini selama dua siklus instruksi mesin akan me-reset perangkat.

ALE/ PROG Address Latch Enable (ALE) adalah pulsa keluaran untuk mengunci bit rendah dari alamat saat mengakses memori eksternal. Kaki ini juga digunakan sebagai masukan pulsa ( PROG ) saat pemprograman Flash. Pada operasi biasa, ALE mengeluarkan rata-rata 1/6 kali frekuensi osilator dan mungkin digunakan sebagai pewaktu atau denyut. Catatan, satu pulsa ALE diabaikan saat setiap pengaksesan data memori eksternal. Jika diinginkan, operasi ALE dapat di-disable dengan menseting bit 0 dari SFR pada lokasi 8EH. Dengan bit yang diset, ALE aktif hanya saat menjalankan perintah MOVX dan MOVC. Selain itu, kaki ini dapat juga di-pull
10

tinggi. Setting bit ALE-disable tidak berpengaruh jika mikrokomputer pada mode eksekusi eksternal. PSEN Program Store Enable (PSEN) adalah strobe pembacaan program pada memori eksternal. Ketika AT89C52 melakukan eksekusi program dari memori eksternal, PSEN diaktifkan dua kali setiap siklus instruksi mesin, kecuali bahwa dua aktifasi PSEN diabaikan setiap mengakses data memori eksternal.

EA / Vpp External Access Enable. EA harus dihubungkan ke GND supaya memfungsikan perangkat untuk mengambil kode program dari lokasi memori eksternal dimulai dari 0000H hingga FFFFH. Catatan, jika lock-bit diprogram, EA akan dikunci secara internal pada saat reset. EA harus dihubungkan dengan Vcc untuk eksekusi program internal. Kaki ini juga menerima tegangan yang memungkinkan

pemrograman 12 Volt saat memprogram flash bila pemrograman 12 Volt dipilih.

XTAL1 Masukan inverting (pembalikan) penguat osilator dan masukan untuk operasi rangkaian denyut internal.

XTAL2 Keluaran dari inverting (pembalikan) penguat osilator.

11

BAB III PERANCANGAN DIGITAL VOLTMETER DUAL CHANNEL


V O meter digital ini dirancang untuk menampilkan pengukuran volt meter DC dan yang ditampilkan secara digital dengan adanya tampilan display 7 segmen dual untuk menampilkan pembacaan pengukurannya. Aplikasi ini memanfaatkan bagian dari multi meter analog sebagai pengolah sinyal yang terukur, sinyal keluaran pembacaan data analog ini

kemudian dilewatkan pada ADC sebagai data masukan digital bagi pengolahan mikrokontroller. Dalam mikrokontroller dilakukan pengalamatan data untuk memanggil alamat sinyal. Untuk pembacaan tegangan dan tahanan ini dilengkapi dengan range selector sebagai pengali pembacaan volt/ohm meter.

IN

KALIBRASI SINYAL

ADC ICL 7135

uC AT89C52

MAX 7219 DISPLAY

7 SEGMENT COMMON CHATODE DISPLAY

Gambar. Diagram blok sistem Digital Voltmeter Dual Channel

3.1 Perancangan Rangkaian Power Supply Rangkaian Power Supply adalah rangkaian yang menghasilkan sebuah output tegangan yang telah di tentukan dan di desain untuk men-supply beberapa keperluan, contohnya seperti pada rangkaian Digital Voltmeter Dual Channel. Dibawai ini terdapat desai perangcangan dari rangkaian power supply DVM.

12

Gambar. Rangkaian Skematik Power Supply DVM

Gambar. Layout PCB DVM

Perancangan Rangkaian Power Supply ini mempunya range output sebesar 5 V untuk logika digital. Output +5 VA untuk rangkaian analog dan -5 VA untuk rangkaian analog.

3.2 Perancangan Rangkaian ADC DVM Rangkaian ADC ICL7135 adalah suatu rangkaian dimana fungsinya adalah sebagai pengubah sinyal analog menjadi digital. ICL7135 ini untuk menginterface kan ke mikrokontroller AT89C52. Gambar dibawah ini adalah perancangan rangkaian ADC ICL7135.

Gambar. Rangkaian skematik ADC ICL 7135. 13

Gambar. Layout PCB ADC DVM.

3.3 Perancangan Rangkaian SISMIN Mikrokontroller AT89C52.

Rangkaian SISMIN (Sistem Minimum) Mikrokontroller AT89C52 adalah suatu rangkaian yang terdapat komponen mikrokontroller AT89C52 yang fungsinya untuk memproses semua sistem rangkaian DVM yang sudah di program sebelumnya dengan bahasa assembler. Gambar dibawah ini adalah rangkaian Mikrokontroler AT89C52.

Gambar. Rangkaian SISMIN mikrokontroller AT89C52 DVM 14

Gambar. Layout PCB SISMIN AT89C52 DVM

3.4 Perancangan Display 7 segment Digilal Voltmeter dengan IC MAX7219 Rangkaian Display ini adalah tampilan dari alat ini dengan 7 segment berupa tampilan digit numerik yang di konversikan oleh mikrokontroller dari ADC. Dibawah ini terdapat perancangan rangkaian Display 7 segment dengan IC MAX7219.

\
Gambar. Rangkaian skematik Display IC MAX7219

15

Gambar. Layout PCB Display IC MAX 7219

3.5 Perancangan Sistem Software Pada sistem perangkat lunak ini berisi tahap-tahap perancangan program pada mikrokontroller AT89C51. Dimana didalam IC program ini merupakan otak dari sistem yang ingin dijalankan pada perancangan alat Voltmeter digital ini. Untuk merancang suatu pengalamatan program terlebih dahulu harus disusun suatu diagram alir agar pengalamatan program terorganisir dengan baik didalamnya. perancangan sofware V/O meter digital ini sebagai berikut : Diagram alir dalam

16

START

SELEKTOR TEGANGAN

TEGANGAN DC

RANGE MEMENUHI YA

TIDAK

TAMPILAN KELUAR DISPLAY

SELESAI

Gambar. Diagram blok sistem Digital Voltmeter Dual Channel

Pada diagram blok sistem diatas terdapat beberapa perintah yaitu adanya selektor tegangan yang diatur agar rang pengukuaran pada tampilan display suauai yang diharapkan memliki batas ukur maksimal 2 2000V. Setelah mode dipilih ADC akan membaca besaran masukan baik tegangan maupun tahanan untuk dialamatkan pada

mikrokontroller AT89C51. Pada IC program ini dilakukan pengolahan data biner tersebut menjadi alamat BCD untuk mengaktifkan 7 segment. Untuk melakukan

pengukuran kembali hanya dengan melpaskan probe ketika pengukuran karena berjalan secara otomatis begitu pula polaritasnya tegangan negative atau positif.

17

BAB IV PENGUJIAN DAN ANALISA

4.1 Pengujian Rangkaian Power Supply DVM Header Nilai tegangan pada regulator 5V 1 +5 VA -5 VA 5V 2 +5 VA -5 VA Tegangan rangkaian yang sebenarnya 4,98 V +4,99 V -5,00 V 4,95 V +4,98 V -4,99V

4.2 Pengujian Pengukuran batas ukur DVM


1

Pengujian batas ukur Voltmeter Pada sistem shunt ayrton dilakukan dengan memasang resistor pembagi

tegangan secara seri dan range pembacaan dilakukan diantara resistor-resistor tersebut dengan metode pembagi tegangan. Pada aplikasi pembacaan tegangan (DC) ini seharusnya dipasang menggunakan resistor R1 100, R2 1k, dan R3 10k sedangkan tegangan ADC ICL7135 adalah 1 volt sebagai VO voltmeter. Sehingga dengan metode rangkaian ganda diperoleh range pembacaan volt meter sebesar :

18

Vin = 10 Volt

Jadi berdasarkan pemilihan komponen resistor diatas dan referensi tegangan yang harus dimasukkan pada ADC I C L 7 1 3 5 maka volt meter ini mempunyai batas ukur pembacaan tegangan baik AC ataupun DC sebesar 10 volt untuk range rendah dan hingga 111 volt untuk range tertingginya. Pada tabel berikut terdapat beberapa hasil perbandingan pengukuran DVM.

Nama barang yang Diujikan Batere 1.5V Adaptor DC input 1.5 V

Hasil pengukuran pada Voltmeter 1.48V 1.5V

Hasil pengukuran pada DVM 0.9V 1.2V

Pada table diatas dapat ditarik kesimpulan bahwa DVM mempunyai kesalahan pembacaan yang disebabkan oleh internal error.

19

4.3 Pengujian ADC ICL7135

ADC MC 14433 memiliki prinsip kerja yang sama dengan ADC jenis lain hanya saja bentuk keluarannya bukan berupa bit-bit digital seperti pada ADC lain melainkan berupa logika BCD dengan kode keluaran D-C-B-A dan empat keluaran lainnya berupa scanning untuk melewatkan logika tinggi sebagai pemicu anoda 7 segment yang akan dinyalakan. Untuk menjalankan IC ini juga diperlukan pengaturan step

konversi analog ke desimal dengan referensi kerja maksimal sebesar 1,999 volt yang dalam hal ini diatur pada nilai referensi 1 volt. Berbeda dengan ADC lain yang berkerja berdasarkan konversi volt/step, ADC ini melakukan konversi analog menjadi digital melalui pengaturan clock dengan perhitungan sebagai berikut :

Dimana 16400 merupakan Clock cycle dari range kerja EOC pada IC ADC ICL7135 ini. Jika pada pemilihan komponen pembentuk clock pada pin 4,5 dan 6

menggunakan resistor 470K dan capasitor 0,1uF maka clock pada IC ini sebesar

20

4.4 Sistem Pengalamatan Memori Terprogram AT89C52

Mikrokontroller AT89C52 ini mendapatkan data masukan dari ADC ICL7135, rangkaian mengeluarkan data untuk mengalamatkan 7 segment. Untuk membaca ADC ICL7135 dapat dilakukan dengan metode pemrograman berikut :

Program dalam program Bahasa C /* DVM7135 Project */ #include "AT89X52.H" #include "stdio.h"

sbit CLK= P1^7; sbit DIN= P1^6; sbit LOAD= P1^5; sbit D5 = P0^4; sbit P2D5 = P2^4; int digit=5; int digit2=5; char sbuffer[8]; char sbuffer2[8]; unsigned char buffer[16]; char command; short ready=0; short ready2=0;

21

short terminal=1; int V1=0; int tV1,tV2; unsigned int temp16; unsigned long temp32=0; sbit RUN = P1^1; char code convert[10] = {0x7e,0x30,0x6d,0x79,0x33,0x5b,0x5f,0x70,0x7f,0x7b};

/* 7-segment pattern converting array a __ f |__| b e |__| c.DP d */ char code prompt[] = "\n\r >"; short pol,ov; short pol2,ov2; #define POLARITY 0x20 #define OVERRANGE 0x40 // shift 32-bit data to 7219 serially shift(long n) { char j; register data D7 D6 D5 D4 D3 D2 D1 D0 DP a b c d e f g

22

CLK = LOAD = 0; for(j=0; j<32; j++) { DIN = n&0x80000000; // send data to 7219 CLK =1; CLK =0; n<<=1; // shift left one bit } LOAD =1; LOAD =0; } // pulse LOAD // pulse CLK

init7219() { shift(0x0a010a01); /* intensity (middle) */ shift(0x0b070b07); /* scan limit 8 digits */ shift(0x09000900); /* no decode mode */ shift(0x0f000f00); /* disable test mode */ shift(0x0c010c01); /* normal operation */ } update7219() { //init7219(); /* reinitialize everytime entering to this function */

temp32=0; temp32 |= buffer[0];


23

temp32<<=16; temp32|= buffer[8]; shift(0x01000100|temp32); temp32=0; temp32 |= buffer[1]; temp32<<=16; temp32|= buffer[9]; shift(0x02000200|temp32); temp32=0; temp32 |= buffer[2]; temp32<<=16; temp32|= buffer[10]; shift(0x03000300|temp32); temp32=0; temp32 |= buffer[3]|0x80; // put decimal point temp32<<=16; temp32|= buffer[11]|0x80; shift(0x04000400|temp32); temp32=0; temp32 |= buffer[4]; temp32<<=16; temp32|= buffer[12]; shift(0x05000500|temp32); temp32=0; temp32 |= buffer[5];
24

temp32<<=16; temp32|= buffer[13]; shift(0x06000600|temp32); temp32=0; temp32 |= buffer[6]; temp32<<=16; temp32|= buffer[14]; shift(0x07000700|temp32); temp32=0; temp32 |= buffer[7]; temp32<<=16; temp32|= buffer[15]; shift(0x08000800|temp32); } void ex0_isr (void) interrupt 0 { if(D5) digit=5; sbuffer[digit]= P0&0x0F; buffer[8-digit]=convert[sbuffer[digit]]; digit--; if(digit==0) ready=1; // read polarity, over range and under range if(P0&POLARITY) pol=1; else pol=0; if(P0&OVERRANGE) ov=1;
25

using 1

else ov=0; } void ex1_isr (void) interrupt 2 { if(P2D5) digit2=5; sbuffer2[digit2]= P2&0x0F; buffer[16-digit2]=convert[sbuffer2[digit2]]; digit2--; if(digit2==0) ready2=1; // read polarity, over range and under range if(P2&POLARITY) pol2=1; else pol2=0; if(P2&OVERRANGE) ov2=1; else ov2=0; } void over_display() { buffer[3]=0x7E; buffer[4]=0x0E; buffer[5]=0; buffer[6]=0; buffer[7]=0; } void over_display2() {
26

using 2

buffer[11]=0x7E; buffer[12]=0x0E; buffer[13]=0; buffer[14]=0; buffer[15]=0; } void print_channel1() { // float temp; if(ready) { // ready=0; V1=0; V1 = sbuffer[5]*10000; V1 += sbuffer[4]*1000; V1 += sbuffer[3]*100; V1 += sbuffer[2]*10; V1 += sbuffer[1]; //RUN=0; // display on LED if(pol==0) buffer[2]= 0x01; // put minus sign else buffer[2]=0x00; buffer[3] |=0x80; // put dot to buffer[3] if(ov) over_display(); update7219();
27

// also send to PC via serial port 9600 8n1 if(pol==0) V1*=-1; tV1= V1; // } } void print_channel2() { // float temp; if(ready2) { // ready2=0; V1=0; V1 = sbuffer2[5]*10000; V1 += sbuffer2[4]*1000; V1 += sbuffer2[3]*100; V1 += sbuffer2[2]*10; V1 += sbuffer2[1]; //RUN=0; // display on LED if(pol2==0) buffer[10]= 0x01; // put minus sign else buffer[10]=0x00; buffer[11] |=0x80; // put dot to buffer[3] printf("\n%.4f,",temp);

28

if(ov2) over_display2(); update7219(); // also send to PC via serial port 9600 8n1 if(pol2==0) V1*=-1; tV2= V1; //printf("%.4f",temp); } } void pause() { unsigned int i; for(i=0; i<50000;i++) continue; } void print_7135() { //buffer[1]=0x06; //buffer[2]=0x4E; //buffer[3]=0x0E; buffer[12]=convert[7]; buffer[13]=convert[1]; buffer[14]=convert[3]; buffer[15]=convert[5]; update7219(); pause(); // wait for a while
29

} void print_terminal() { if(ready&&ready2) { ready=0; ready2=0; printf("\n%dE-4,%dE-4",tV2,tV1); } }

char getchar(void) { char c; while(!RI); RI =0; c = SBUF; putchar(c); // echo to terminal

return SBUF; } void getcommand() { if (RI) command = getchar(); // else command = -1; }
30

/* no cammand has entered */

void escape_command() { if(command== 0x27) { //terminal^=1; } } void main (void) { SCON = 0x50; TMOD |= 0x20; TH1 = 0xfd; TR1 = 1; TI = 1; T2CON = 0x00; for 50Hz T2MOD |= 0x02; TR2 =1; RCAP2H= 0xFF; RCAP2L= 0xEA; // E9 for 120kHz, EA for 125kHz /* SCON: mode 1, 8-bit UART, enable rcvr /* TMOD: timer 1, mode 2, 8-bit reload /* TH1: reload value for 9600 baud /* TR1: timer 1 run */ */ */ */

/* TI: set TI to send first char of UART */ // timer 2 is used to produce 120KHz for 60Hz and 125kHz

IT0 = 1; // Configure interrupt 0 for falling edge on /INT0 (P3.2) IT1 =1; // falling edge of INT1 EX0 = 1; // Enable EX0 Interrupt EX1 = 1; // enable EX1 interrupt

31

EA = 1;

// Enable Global Interrupt Flag

RUN=1; // hold init7219(); printf("\nDual Channel Digital VoltMeter"); print_7135(); buffer[0] = convert[2]; buffer[8]= convert[1]; while(1) { getcommand(); escape_command(); print_channel1(); print_channel2(); print_terminal(); } }

Setelah Program diatas di compile dan dijadikan format HEX file untuk di download ke AT89C52 dengan menggunakan downloader universal SuperPro.

32

BAB V PENUTUP 5.1 Kesimpulan

1. Perancangan alat digital voltmeter dual channel dengan tampilan 7 segment menggunakan mikrokontroler ini telah memenuhi syarat, tetapi kemampuan membaca nilai-nilai tegangan yang diukur, dan pada tampilan 7 segment tidak/belum sesuai dengan yang diharapkan.

2. Pemanfaatan ADC ICL 7135 yang merupakan sebuah chip Ic 28 pin yang memiliki kegunaan multi fungsi sebagai pengubah data analog menjadi digital sekaligus bisa menampilkan data digitalnya dalam bentuk BCD counter yang kemudian menampilkannya kedalam 7 segment 4 1/2 digit angka digital dan dapat menampilkan angka hingga 1999.

3. Penggunaan Mikrokontroller khususnya AT89C52 sangat vital sekali dan penggunaannya yang sangat luas terutama dalam perancangan yang berhubungan dengan kontrol yang memiliki keakurasian dan keamanan yang bisa diandalkan.

4. Pemanfaatan MAX7219, setiap chip drive 8-digit 7-sement LED. Data serial keluar dari MAX7219 1 terkait dengan data dari MAX7219 2. Konfigurasi ini membentuk register 32-bit pergeseran (byte kontrol dan byte data 16-bit kata).

33

5.2 Saran Dari kesimpulan yang dapat ditarik pada perancangan alat ini maka penulis mempunyai saran sebagai berikut :

1. Dengan

perancangan

alat

ini

dapat

memberikan

kontribusi

bagi

perkembangannya dan mampu menciptakan teknologi yang lebih baru

2. Aplikasi alat ini lebih tepat jika digunakan untuk pengukuran yang lebih sempurna dan teliti dalam ketepatan pembacaan, Sehingga dengan bantuan alat ini dapat diketahui nilai tegangan atau resistor dengan cepat dan akurasi pembacaan yang lebih baik.

3. Untuk aplikasi yang lebih luas dan lebih spesifik alat ini dapat dikembangkan dengan menambah range dalam pengukuran dengan tujuan agar dapat

mengukur tegangan yang lebih besar. Misalnya untuk mengukur tegangan yang mencapai nilai kilo ataupun mega volt.

4. Meskipun alat ini belum memenuhi nilai presisi dari kalibrasi tegangan voltmeter namun alat ini bisa lebih di kembangkan lagi dan di sempurnakan kembali agar mendapatkan hasil yang diharapkan dan di manfaatkan oleh masyarakat.

34

DAFTAR PUSTAKA

Johnson David E., Johnson Johnny R., Hilburn John L., Scott Peter D., Electric Circuit Analysis, Third Edition, Prentice Hall, Inc., 1997 Malvino, Albert Paul. Prinsip Prinsip Elektronika, diterjemahkan oleh Joko Santoso, Jilid 1 dan 2. jakarta, Salemba Teknika, 2003. Budiman M. Dodi,ST.,MT.,Perancangan Sistem Digital I & II . Bandung, 2009.

http://www.kmitl.ac.th/~kswichit/DVM7135/DVM7135.htm Http://www.datasheet4U.com Http://www.AllDatasheet.Com

35

Anda mungkin juga menyukai