Anda di halaman 1dari 4

MODUL SISTEM INSTRUMENTASI MIKROTRAINER MCS-51 SEBAGAI ALAT PEMBELAJARAN MIKROKONTROLER

Sandro Yosua, Petrus Fajar Subekti, Christian Chandra, Rio Natanael, Kirtie Racquel T., Ade Wahyu, Millaty Mustaqima

10208037
Program Studi Fisika, Institut Teknologi Bandung, Indonesia Email : Sandro_fez@yahoo.com.sg Asisten : M. Aziz Billah

Tanggal Praktikum : 26 Maret 2011 Abstrak Dewasa ini hamper semua peralatan elektronik menggunakan mikrokontroler. Mikrokontroler adalah alat pengendali suatu system. Praktikum kali ini akan dipraktekan bagaimana member instruksi kepada mikrokontroler dengan bahasa C yang diterjemahkan ke bahasa heksadesimal yang akan dapat dilihat hasilnya pada alat Mikrotrainer. I. Pendahuluan Praktikum mikrokontroler ini bertujuan agar praktikan mengenal Mikrotrainer MCS51 sebagai alat bantu pembelajaran mikrokontroler keluarga MCS-51, mampu membuat program sederhana pada mikrokontroler At89s52 untuk menjalankan modul-modul yang terdapat pada mikrotrainer MCS-51 memahami prinsip kerja mikrotrainer MCS-51 dan memahami konsep akuisisi data pada mikrotrainer MCS- 51. Mikrokontroler adalah pengendali kerja - dari serangkaian system elektronika. Jadi - mikrokontroler dapat dikatakan otak dari - peralatan elektronik. Mikrokontroler sama halnya dengan computer namun dalam skala kecil, ia memiliki memori, CPU, dan perlengkapan lainnya. Sedangkan mikroprosesor adalah sebuah central - processing unit yang masij perlu dilengkapi - perlengkapan penunjang lainnya.
-

Ada tiga macam mikrokontroler yang dikenal saat ini antara lain AVR, PIC, dan
MCS-51. Perbedaan dari masing-masing mikrokontroler terletak pada arsitekturnya. Pada praktikum kali ini akan dilakukan percobaan terhadap mikrotrainer MCS-51 yang memiliki mikrokontroler jenis AT89S52. Fitur yang dimiliki mikrokontroler jenis AT89S52 adalah: Fasilitas yang dimiliki AT89S52 antara lain:

-

Bersesuaian dengan mikrokontoler keluarga MCS-51 Memori sebesar 8 kb Ketahanan hingga 1000 kali baca tulis Tegangan operasi 4.0V – 5.5V Kecepatan clock dari 0 – 33 MHz Tiga level penguncian memori program RAM internal sebesar 256 byte 4 port masing-masing terdiri dari 8 bit 8 sumber interrupt Antarmuka ISP untuk memasukkan program Modul UART

6.2 data pointer . Port 1 adalah port input output dua arah. Pin 31 Adalah pin EA/Vpp yang merupakan Eksternal Access Enable 10. kita memerlukan source code yang dalam bahasa . LED bergerak ke kanan. Pin dan port yang terdapat pada AT89S52 adalah: 1. Pin 21 sampai pin 28 Merupakan port 2 yang merupakan input output dua arah yang telah dilengkapi dengan internal pull up. Pin 18 dan pin 19 Untuk menghubungkan resonator Kristal atau keramik dengan kaki-kaki XTAL1 dan XTAL2 Pin 20 Adalah pin ground.Watchdog timer yang dapat deprogram . Pin 10 sampai pin 17 Merupakan pin dari port 3. 4.Mode daya hemat idle dan power down . Pin 30 Adalah pin Address (ALE/PROG). 7. Konfigurasi pin dan port pada AT89S52 2. Merupakan pin dari port 1. Pin 40 Merupakan pin Vcc untuk menerima tegangan sumber (+) yang dibutuhkan oleh mikrokontroler AT89S52 Gambar 1. Pin 1 sampai 8. LED bergerak ke kiri. II. Pin 9 Merupakan input reset yang membuat mikrokontroler memulai pembacaan program dari alamat awal. 5. Contoh mikrokontroler Mikrokontroler memiliki beberapa pin dan port. Port 3 adalah port input output dua arah dengan internal pull up yang memiliki fungsi pengganti. bisa I (high) atau O (low). 3. Metode Percobaan Pada praktikum ini akan dicoba lima macam instruksi yaitu LED berkedip. Fungsi dari pin dan port adalah sebagai tempat keluar masuknya data. dan analog to digital converter. Latch Enable 9.Flag power off - 8. Pin 32-39 Adalah port 0 yang merupakan port input output dengan tipe open drain bidirectional 11. seven segment. Pin 29 Merupakan Program Store Enable (PSEN) Gambar 2. Untuk setiap percobaan.

Data dan Pengolahan Data ADC Digital 255 220 192 173 135 107 91 55 0 V 4. for (i=0.649 0. } } . P2=a. Setelah code diloading akan Nampak hasilnya pada mikrotrainer. III. //deklarasi fungsi delay dg parameter n void tampil_7segmen (int angka) . } } //======Deklarasi Tubuh fungsi====== //===========fungsi tunda========== void delay(int n) { int i.i<150.i<=10000. Source code itu lalu diterjemahkan ke dalam bahasa heksadesimal.assembly. while(j<=7){ a=((a<<1)|(a>>7)). Bahasa heksadesimal tersebut lalu dimasukan ke dalam mikrotrainer melalui piranti lunak AEC_ISP. j++. } } //============================== //fungsi menampilkan angka 7 segmen Tabel 1.483 3.bit status).145 2. Data ADC ADC Bacaan Digital 400 200 0 0 2 Voltase 4 6 Kurva 1.i++) { int i. delay(1000).i++) tampil_7segmen(i). //======Deklarasi fungsi selesai====== //=========Program Utama========= void main() { while(1) //maksudnya ketika bernilai benar maka dilakukan nilai berikut { unsigned int i.i<10000.486 1. P2=a.i++) { int i.i++).992 0 void main(){ volatile unsigned char a=0xfe.66 4 3. } } Source Code seven segment 1-9999 #include<reg51. j++.h> void delay(int n) .i<n.i<=n.i++). int j=1. Kurva tegangan terhadap bacaan pada layar digital Source Code penggabungan LED geser kanan dan kiri #include<reg52. } j=1. for( i=0.963 1. for(i=0. for ( i=0. delay(1000). } j=1.h> void delay(int n){ int i. unsigned char seven_segment(unsigned char c. while(1) { while(j<=7){ a=((a>>1)|(a<<7)). for(i=0.

dig3. Nilai selang inilah yang akan digunakan untuk membulatkan ke bawah nilai tegangan yang didapat.com/doc/33692040/10/K onfigurasi-Pin-AT89S52 http://www. Konsep analog to digital converter adalah mendiskritkan nilai listrik. Operasi yang tidak terlihat itu ditentukan oleh variable I pada [for(i=0.com/inno vative_electronics/download_files/manual/D as7. //menampilkan angka pada digit 0. //menampilkan angka pada digit 2 P2=0b01110000 |dig3. Ini berarti setiap penambahan tegangan sebesar 1V akan menambah nilai 55 pada bacaan digitalnya. Operasi yang tampak adalah menyalakan LED. yg di ubah hanya 4 biner terkahir & 4 biner awal untu nentuin 7segment yang digunakan delay(2). for(i=0.pdf IV.i<10000. Pada percobaan didapat fungsi transfer y = 54.i<150.dig1. char dig0.scribd.078. . dig3=angka/10000.i++) { P2=0b11100000|dig0. angka%=100. dig2=angka/1000.innovativeelectronics. //menampilkan angka pada digit 3 delay(2).i++)].void tampil_7segmen(int angka) { char i. P2=0b11010000|dig1. //fungsi modulus angka%=10000. Pustaka http://www. Kesimpulan Mikrotrainer dapat digunakan untuk latihan mikrokontroler Untuk member instruksi pada mikrokontroler. Caranya dengan membagi angka digital yang disediakan dengan tegangan maksimum masukan akan menghasilkan nilai selang. //menampilkan angka pada digit 1 delay(2). } V.dig2. angka%=1000. P2=0b10110000|dig2.84 x +0. diperlukan penerjemahan dari bahasa assembly ke bahasa heksadesimal Analog to Digital Converter mengubah nilai analog ke digital secara terkuantisasi Prinsip kerja mikrokontroler adalah menjalankan instruksi dengan membuat high/low pada pin dan portnya VI. dig0=angka%100. Pembahasan Fungsi delay pada source diatas adalah untuk menambah variable lain pada operasi yang tidak tampak. dig1=angka/100.