Percobaan 5 PENGENALAN MIKROKONTROLER 8051 I. Tujuan 1. Mempelajari arsitektur mikrokontroller 8051 2. Memahami macam-macam interrupt yang ada pada mikrokontroller 8051 3. Memahami penggunaan I/O port pada mikrokontroller 8051 4. Mempelajari kerangka program dan instruksi dasar mikrokontroller 8051 5. Dapat membuat program sederhana untuk menjalankan modul I/O Led display board dan switch input board II. Ruang Lingkup A. Teori Singkat Mikrokontroler adalah sebuah prosesor yang dipergunakan khusus untuk keperluan kontrol. Berbeda dengan mikroprosesor, mikrokontroler sendiri sudah memiliki device teretentu yang diperlukan untuk keperluan control. Pada percobaan ini,kita menggunakan Mikrokontroller 8051. Dibawah ini adalah blok diagram dari mikrokontroller 8051. Gambar 5.1 Diagram Blok 8051 Pemprograman mikrokontroller dapat dilakukan dengan menggunakan beberapa bahasa, seperti C51, dan assembly 51 (asm51). Praktikum ini akan menggunakan bahasa pemrograman asm51. Pedoman Praktikum Aplikasi Mikroprosesor & Interfacing Percobaan 5 UPT Perangkat Keras Halaman : 1 dari 8 Interrupt Interrupt merupakan suatu panggilan yang memaksa mikrokontroler untuk menunda program yang sedang dijalankan dan menjalankan proses yang terdapat di interrupt tersebut sampai proses tersebut diselesaikan, sesudah itu mikrokontroler akan melaksankan kembali program yang ditunda tersebut. Secara garis besar cara pemanggilan interrupt dapat digambarkan seperti gambar 5.2 berikut: Gambar 5.2 Mekanisme pemanggilan interrupt Pada saat interrupt berlangsung maka program counter akan pergi menuju alamat interrupt dan mengerjakan perintah (program) yang ada pada alamat tersebut, masing-masing interrupt mempunyai alamat yang biasa disebut dengan interrupt vektor alamat interrupt ini dapat dilihat pada tabel 5.1. setelah mengerjakan interrupt tersebut maka 8051 akan kembali mengerjakan perintah awal (main program). Tabel 5.1 Alamat vektor interupsi pada MCS-51 Sumber Interupsi Alamat Vektor IE0 0003h TF0 000Bh IE1 0013h TF1 001Bh R1 & T1 0023h TF2 & EXF2 002Bh Keterangan Interupsi External 0 Interupsi Timer 0 Interupsi External 1 Interupsi Timer 1 Interupsi Serial Interupsi Timer 2 Pada tabel 5.2 terdapat beberapa register yang digunakan untuk melakukan setting interrupt pada 8051 masing-masing mempunyai fungsi khusus antara lainnya ialah IE digunakan untuk mengenable interrupt/ dengan kata lain untuk mengaktifkan interrupt yang telah di-setting. IP merupakan register yang digunakan untuk melakukan pengesetan prioritas dari interrupt. Pedoman Praktikum Aplikasi Mikroprosesor & Interfacing Percobaan 5 UPT Perangkat Keras Halaman : 2 dari 8 Tabel 5.2 Beberapa Register dalam 8051 Register Bit IE EA ET2* ES ET1 IP PT2 PS PT1 TCON TF1 TR1 TF0 TR0 IE1 SCON SM0 SM1 SM2 REN TB8 IE : Interrupt Enable IP : Interrupt Priority TCON : Timer Control SCON : Serial Control * Hanya terdapat pada 8052 ke atas EX1 PX1 IT1 RB8 ET0 PT0 IE0 TI EX0 PX0 IT0 RI I/O Port Port 0 adalah port berfungsi ganda, sebagai 8-bit bidirectional I/O port (P0.0 – P0.7) ataupun sebagai low-order multiplexed address/data bus (AD0 – AD7). Sebagai I/O port, port ini mampu melewatkan arus (sink) 8 beban LSTTL pada kondisi LOW, dan kondisi mengambang (float) untuk kondisi HIGH (IOL = 3.2 mA). Kegunaan port ini dalam addressing AD0 – AD7, digunakan untuk mengakses memori eksternal. Port ini akan aktif secara otomatis jika akan mengakses memori eksternal. Jalur AD di demultiplexer menjadi A0-A7 dan D0-D7 dengan bantuan sinyal ALE. Port 1 adalah 8-bit bidirectional I/O port yang mampu untuk melewatkan/sink atau mengaktifkan sampai dengan 4 buah beban LS TTL. (IOL = 1.6 mA, IOH = -80 µA). Port 2 memiliki fungsi ganda, baik sebagai 8-bit bidirectional I/O port (P2.0 – P2.7), ataupun sebagai higher order address bus (A8 – A15) untuk mengakses memori eksternal. Port 3 memiliki fungsi ganda, sebagai 8-bit bidirectional I/O port (P3.0 – P3.7) ataupun sebagai special purpose I/O untuk menyediakan fungsi-fungsi yang tertera pada tabel 5.3 berikut ini. Tabel 5.3 Special purpose I/O pada port 3 Port pin Fungsi Alternatif RXD (serial input port) P3.0 TXD (serial output port) P3.1 P3.2 INT0 (eksternal interrupt 0) P3.3 INT1 (eksternal interrupt 1) T0 (Timer 0 external input) P3.4 T1 (Timer 1 external input) P3.5 P3.6 WR (eksternal data memori write strobe) P3.7 RD (eksternal data memori read strobe) Pedoman Praktikum Aplikasi Mikroprosesor & Interfacing Percobaan 5 UPT Perangkat Keras Halaman : 3 dari 8 B. Daftar Alat 1. EX-01 Led Display Board 2. EX-03 Switch Input Board 3. Modul Aplikasi & Interfacing kode : kode : kode : III. Referensi • MCS-51 PROGRAMMER’S GUIDE AND INSTRUCTION SET. • http://www.atmel.com/products/8051/ IV. Urutan Instruksi Kerja A. Prosedur 1. Port MCS Sebagai Output • Hubungkan Modul 8051 dengan Modul Led Display Board dengan menggunakan data bus seperti gambar 5.3 di bawah ini Gambar 5.3 Koneksi antara modul 8051 dengan Led Display Board Pedoman Praktikum Aplikasi Mikroprosesor & Interfacing Percobaan 5 UPT Perangkat Keras Halaman : 4 dari 8 • Ketiklah program dibawah ini : $mod52 $object org 00h ajmp start org 40h start: cpl p1.0 acall delay ajmp start delay: mov r7,#0ffh delay1: mov r6,#0ffh djnz r6,$ djnz r7,delay1 ret end • • • • Simpan dengan namafile.asm Compile-lah dengan menggunakan ASM51.exe. ASM51 <namafile.asm> Program ini akan menghasilkan <namafile.hex>, dan <namafile.lst> Hex file digunakan untuk simulasi dan untuk memprogram IC. LST file akan menunjukkan ERROR jika ada kesalahan. Perbaikilah jika terdapat error! Burn <namafile.hex> ke IC MCS’51 dengan menggunakan program WINISP.EXE Perhatikan outputnya! 2. Port MCS Sebagai Input • Tambahkan Switch input board pada percobaan sebelummnya (Port MCS Sebagai Output) dengan menggunakan data bus seperti gambar 5.4 di bawah ini Pedoman Praktikum Aplikasi Mikroprosesor & Interfacing Percobaan 5 UPT Perangkat Keras Halaman : 5 dari 8 Gambar 5.4 Koneksi antara modul 8051 dengan Led Display Board dan swich input board • Ketiklah program berikut : $mod52 $object org 00h ajmp start org 40h start: mov p3,#0ffh mov p1,p3 ajmp start end • • • Simpan dengan namafile.asm Compile dan write kedalam IC Perhatikan outputnya! Pedoman Praktikum Aplikasi Mikroprosesor & Interfacing Percobaan 5 UPT Perangkat Keras Halaman : 6 dari 8 3. Penggunaan Interrupt Eksternal 0 • Masih menggunakan modul dan koneksi percobaan sebelumnya (Port MCS sebagai input), Ketiklah program sebagai berikut: $mod52 $object org 00h ajmp start org 03h ajmp intr0 intr0: push psw inc p1 pop psw reti org 40h start: setb ex0 setb it0 setb ea mov p1,#00h ajmp $ end • • • Simpan dengan namafile.asm Compilelah dan write kedalam IC Perhatikanlah apa yang terjadi jika interrupt ditekan. 4. Penggunaan Interrupt Timer 0 • Masih menggunakan modul dan koneksi percobaan sebelummnya (Port MCS sebagai input), Ketiklah program sebagai berikut: $mod52 $object org 00h ajmp start org 0Bh ajmp timer0 timer0: Cpl p1.0 reti Pedoman Praktikum Aplikasi Mikroprosesor & Interfacing Percobaan 5 UPT Perangkat Keras Halaman : 7 dari 8 org 40h start: setb et0 setb ea mov tmod,#01h mov th0,#4Ch mov tl0,#00h setb tr0 ajmp $ end • • • Simpan dengan namafile.asm Compilelah dan write kedalam IC Perhatikanlah apa yang terjadi. Bandingkan dengan prosedur awal! B. Tugas Laporan 1. Perbedaan mikroprosesor dan mikrokontroller dan contoh-contohnya 2. MCS’51 (fitur, mode pengalamatan, struktur RAM&ROM, SFR) 3. Penjelasan program 4. Flowchart program 5. kesimpulan Latihan : Buat program § 8 LED akan terus berkedip, jika tidak ada interrupt § Jika ada interrupt 0, maka nyala led akan berselang seling § Jika ada lagi interrupt 0, maka posisi led yang berselang-seling akan bertukar. § Jika interrupt 0 ditekan lagi dan seterusnya. § Jika ada interrupt 1, maka led akan menyala § Jika ada interrupt 1 lagi, maka led akan mati dan seterusnya. C. Tugas Pendahuluan 1. Jelaskan perbedaan mikrokontroller dengan mikroprosesor 2. Sebutkan fitur-fitur yang ada pada mikrokontroller 8051! 3. Gambarkan struktur ROM & RAM pada mikrokontroller 8051! Berikan sedikit penjelasan! Pedoman Praktikum Aplikasi Mikroprosesor & Interfacing Percobaan 5 UPT Perangkat Keras Halaman : 8 dari 8
© Copyright 2024 Paperzz