download

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