Archive for Desember 2013
Contoh Penggunaan Interupsi pada Modul DT-51 (Part-1)
![]() |
Gambar 1. Ilustrasi Interupsi |
Interupsi, dapat diartikan suatu pemotongan proses yang dilakukan agar proses yang sebelumnya berjalan dihentikan sejenak lalu mengerjakan hal yang dianggap penting, jika proses penting tersebut telah selesai maka proses yang sebelumnya dihentikan akan dilanjutkan kembali.
Dalam kehidupan interupsi sering kali dikaitkan dengan proses rapat. Ketika pemimpin rapat memimipin jalannya diskusi, tiba-tiba ada salah seorang anggota yang melakukan interupsi terhadap jalannya rapat, entah itu dengan cara mengangkat tangan atau dengan mengatakan "interupsi" terlebih dahulu, langkah berikutnya pimpinan rapat akan memutuskan akan "meladeni" interupsi tersebut atau tidak. Jika interupsi dilayani maka rapat akan dialihkan sejenak ke pemberi interupsi, jika pemberi interupsi sudah selesai menyampaikan apa yang menjadi bahan interupsinya maka proses rapat dilanjutkan lagi seperti sedia kala.
![]() |
Gambar 2. Mikrokontroler |
Sama halnya dengan kehidupan sehari-hari, pada dunia komputer atau dalam hal ini adalah mikrokontroler juga mengenal istilah interupsi atau sering disebut dengan interupt. Pada dunia mikrokontroler interup digunakan untuk mengoptimalkan kinerja dari mikrokontroler itu sendiri. Cara kerjanya adalah sebagai berikut: Ketika mikrokontroler menjalankan suatu proses, tiba-tiba ada proses yang benar-benar dia harus lakukan maka mikrokontroler berhak memutuskan akan menerima interupsi itu atau tidak. Jika menrima maka mikrokontroler akan melakukan penghentian secara sementara proses yang dilakuakan sebelumnya dan melakukan proses yang diinterupsikan kepadanya, jika proses interupsi sudah dijalankan sepenuhnya maka mikrokontroler akan melanjutkan prses yang dihentikan sebelumnya, namun jika mikrokontroler tidak mau menerima interupsi tersebut maka mikrokontroler akan mengabaikan interupsi tersebut begitu saja.
Dalam pembahasan kali ini hardware yang dibutuhkan adalah 1 set trainer board DT-51 (baca pembahasan sebelumnya di : http://bamzato-berbagi-ilmu.blogspot.com/2013/12/konfigurasi-seven-segments-dengan.html ). Beberapa konfigurasi yang harus dilakukan adalah hubungkan port control dengan port control, port 1 dengan port output dan jumper kan IS1 dan INT0 dengan kabel jumper (karena dalam hal ini kita akan mencoba untuk membuat inetrupsi bertipe 1). Janga lupa hubungkan power suply ke sumber tegangan dan kabel serial ke port serial PC.
Untuk sementara pembahasan ini hanya membahas sampai sini dulu, pada postingan berikutnya akan dijelaskan tentang pembuatan program inetrupsi.
Untuk sementara pembahasan ini hanya membahas sampai sini dulu, pada postingan berikutnya akan dijelaskan tentang pembuatan program inetrupsi.
Konfigurasi Seven Segments dengan Mikrokontroler AT89S51
Seven Segments kerap kali digunakan sebagai penunjuk angka, mulai dari kalkulator, jam digital atau bahkan penghitung mundur pada lampu lalu lintas. Dinamakan "Seven Segments" alat ini memang terdiri dari 7 garis (segments) yang berupa dioda led, namun kenyataannya tidak hanya 7, tetapi 8 bagian yang berupa 7 garis dan 1 titik.
![]() |
Gambar 1. Skema 7 segments |
Seven Segments ada yang tipe Common Cathode (CC) dan ada juga yang Commont Anoda(CA). Dalam hal ini jenis yang digunakan adalah jenis CC, sehingga untuk menyalakan segment a sampai dengan Dp harus diberi logika tinggi (1). Misal untuk merubah seven segments menjadi angka 9 maka kita harus menyalakan segment yang berlabel a.b,c,d,f, dan g. Untuk memberikan nilai pada 7 segments kita bisa menggunakan urutan biner sebagai berikut [Dp g f e d c b a], sehingga untuk menyalakan angka 9 maka urutannya sebagai berikut 0 1
1 0 1
1 1 1 atau dalam bilangan hexa menjadi 6F.
Sebagai bahan latihan biasanya 7 segments ini dicoba dengan Modul Trainer DT-51 (Mikrokontroler jenis AT89S51).
![]() |
Gambar 2. Modul Trainer DT-51 |
Pada trainer ini biasanya dilengkapi 2 seven segments. Untuk konfigurasi secara hardware, hubungkan port control pada bagian warna hijau dengan port control pada bagian warna coklat. Hubungkan port C pada port I/P
S KEY dan port 1 pada port data 7 segments. Port C berguna untuk mengatur digit mana yang akan dinyalakan, port C diberi nilai #40h untuk menyalakan digit 2 dan #80h untuk meyalakan digit 1, sementara port data 7 segments sebagai inputan segments mana saja yang akan dinyalakan.
Jika konfigurasi hardware sudah selesai, maka langkah berikutnya adalah menulis program yang akan diinject ke modul DT-51. Program ditulis dengan bahasa Assembly menggunakan aplikasi bernama MIDE 51. Source yang digunakan adalah sebagai berikut.
$mod51
CSEG
ORG 4000H
LJMP START
ORG 4100H
START:
MOV SP, #30H
MOV SP, #30H
MOV DPTR, #2003H (Mengarahkan pointer ke almt 2003h/port cw)
MOV A, #80H
MOVX @DPTR, A (Mmbri port a,b,c nilai 80 yg mmbuat port c jd output)
LOOP:
MOV DPTR, #2002H (mengakses alamat port c)
MOV A, #80H (mengakses digit 1 7 segments)
MOVX @DPTR, A
MOV P1, # 01101111B (menyalakan segments a.b,c,d,f, dan g, membentuk angka 9)
SJMP LOOP
END
Jika program sudah ditulis hingga label "End" maka berikutnya tinggal simpan program tersebut dengan ekstensi .asm dan build programnya sehingga muncul file dengan ekstensi .hex dengan.
Jika program sudah ditulis hingga label "End" maka berikutnya tinggal simpan program tersebut dengan ekstensi .asm dan build programnya sehingga muncul file dengan ekstensi .hex dengan.
Langkah berikutnya adalah hubungkan Modul DT-51 dengan komputer melalui port serial. Jalankan DT-51 Downloader.exe , lalu download kan file .hex tersebut ke modul DT-51. Maka seketika itu juga muncul angka 9 di digit 1 seven segments.
SEKIAN SEDIKIT ILMU YANG SAYA MILIKI, SEMOGA BERMANFAAT (-_-')