mikrokontroler.pdf

8
Pedoman Praktikum Aplikasi Mikroprosesor & Interfacing UPT Perangkat Keras Percobaan 5 Halaman : 1 dari 8 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.

description

mcs-51

Transcript of mikrokontroler.pdf

Page 1: mikrokontroler.pdf

Pedoman Praktikum Aplikasi Mikroprosesor & Interfacing UPT Perangkat Keras Percobaan 5 Halaman : 1 dari 8

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.

Page 2: mikrokontroler.pdf

Pedoman Praktikum Aplikasi Mikroprosesor & Interfacing UPT Perangkat Keras Percobaan 5 Halaman : 2 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 Keterangan IE0 0003h Interupsi External 0 TF0 000Bh Interupsi Timer 0 IE1 0013h Interupsi External 1 TF1 001Bh Interupsi Timer 1 R1 & T1 0023h Interupsi Serial TF2 & EXF2 002Bh 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.

Page 3: mikrokontroler.pdf

Pedoman Praktikum Aplikasi Mikroprosesor & Interfacing UPT Perangkat Keras Percobaan 5 Halaman : 3 dari 8

Tabel 5.2 Beberapa Register dalam 8051 Register Bit IE EA ET2* ES ET1 EX1 ET0 EX0 IP PT2 PS PT1 PX1 PT0 PX0 TCON TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0 SCON SM0 SM1 SM2 REN TB8 RB8 TI RI

IE : Interrupt Enable IP : Interrupt Priority TCON : Timer Control SCON : Serial Control * Hanya terdapat pada 8052 ke atas 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 LS-TTL 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 P3.0 RXD (serial input port) P3.1 TXD (serial output port) P3.2 0INT (eksternal interrupt 0) P3.3 INT1 (eksternal interrupt 1) P3.4 T0 (Timer 0 external input) P3.5 T1 (Timer 1 external input) P3.6 WR (eksternal data memori write strobe) P3.7 RD (eksternal data memori read strobe)

Page 4: mikrokontroler.pdf

Pedoman Praktikum Aplikasi Mikroprosesor & Interfacing UPT Perangkat Keras Percobaan 5 Halaman : 4 dari 8

B. Daftar Alat

1. EX-01 Led Display Board kode : 2. EX-03 Switch Input Board kode : 3. Modul Aplikasi & Interfacing 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

Page 5: mikrokontroler.pdf

Pedoman Praktikum Aplikasi Mikroprosesor & Interfacing UPT Perangkat Keras Percobaan 5 Halaman : 5 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

Page 6: mikrokontroler.pdf

Pedoman Praktikum Aplikasi Mikroprosesor & Interfacing UPT Perangkat Keras Percobaan 5 Halaman : 6 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!

Page 7: mikrokontroler.pdf

Pedoman Praktikum Aplikasi Mikroprosesor & Interfacing UPT Perangkat Keras Percobaan 5 Halaman : 7 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

Page 8: mikrokontroler.pdf

Pedoman Praktikum Aplikasi Mikroprosesor & Interfacing UPT Perangkat Keras Percobaan 5 Halaman : 8 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!