Membuat Variasi Lampu LED

Minggu, 07 Desember 20140 komentar

Membuat Variasi Lampu LED

Project disusun oleh:

1.       Faqih Hadya Gustin;
2.       Christian Adidharma;
3.       Fathur Ibnu Hamdi; dan
4.       Irham Mustofa;


Pada kesempatan kali ini, kami ingin memberikan sebuah tutorial singkat tentang pembuatan variasi gerakan pada lampu LED.

I.                     Tujuan

Sesuai dengan pengarahan oleh guru kami, bapak Febri, kami ditugaskan untuk membuat variasi gerakan pada lampu LED. Variasi yang kali ini kami buat adalah sebagai berikut.



Yaitu sebuah variasi dimana lampu LED yang pertama aktif adalah 2 lampu yang berada di tengah, lalu selanjutnya kedua saling menjauh ke masing-masing ujung kanan dan kiri.

II.                    Pengenalan Aplikasi

Untuk pembuatan variasi LED tersebut, kami memerlukan beberapa aplikasi yaitu M-IDE Studio for MCS 51 dan Top View Simulator.



M-IDE Studio for MCS 51 adalah sebuah aplikasi yang berfungsi untuk membuat barisan-barisan kode perintah. Sedangkan Top View Simulator adalah aplikasi simulasi untuk menjalankan barisan-barisan kode tersebut ke dalam sebuah device virtual.

III.                  Pembuatan kode


Untuk membuat kode-kode perintah, maka yang pertama harus dilakukan adalah menjalankan aplikasi M-IDE Studio. Lalu ketiklah seperti kode berikut, dan sedikit penjelasan singkatnya :





$MOD51 ;Instruksi ini digunakan agar simulator dapat mengidentifikasi program yang dibuat dalam bahasa asembler.


ORG   0H                       ;Untuk menulis program di alamat 0 hexa pada register mikrokontroler.
START:

MOV           P1,#11100111B           ;PORT P1.3 dan P1.4 menyala dan PORT lainnya mati
ACALL         DELAY

MOV           P1,#11011011B           ;PORT P1.2 dan P1.5 menyala dan PORT lainnya mati
ACALL         DELAY

MOV           P1,#10111101B           ;PORT P1.1 dan P1.6 menyala dan PORT lainnya mati
ACALL         DELAY    
    
MOV           P1,#01111110B           ;PORT P1.0 dan P1.7 menyala dan PORT lainnya mati
ACALL         DELAY 
          
MOV           P1,#10111101B           ;PORT P1.1 dan P1.6 menyala dan PORT lainnya mati
ACALL         DELAY

MOV           P1,#11011011B           ;PORT P1.2 dan P1.5 menyala dan PORT lainnya mati
ACALL         DELAY

MOV           P1,#11100111B           ;PORT P1.3 dan P1.4 menyala dan PORT lainnya mati
ACALL         DELAY
          
SJMP           START                 ;Untuk lompat ke Label alamat START

;==========================================================================
;DELAY
;——————-
DELAY:

MOV       R0,#07h                     ;Untuk waktu delay yang pertama

DELAY1:
MOV       R1,#255                     ;Untuk waktu delay yang kedua

DELAY2:
MOV       R2,#255                     ;Untuk waktu delay yang ketiga
DJNZ      R2,$

DJNZ      R1,DELAY2                   ;Untuk Loncat ke Label alamat DELAY2


DJNZ      R0,DELAY1                   ;Untuk Loncat ke Label alamat DELAY1

RET                                     ;RETURN, untuk mengembalikan program
END                            ;Untuk mengakhiri baris program





Sedikit penjelasan dari kode di atas adalah,

P1        pada                MOV           P1,#11100111B Adalah sebagai PORT yang digunakan, yang nanti akan dibahas di tahap selanjutnya.

#11100111B       pada     MOV           P1,#11100111B Adalah sebagai perintah untuk menyalakan dan/atau mematikan LED. 0 berarti menyala, dan 1 berarti mati. Maka dapat diambil kesimpulan dari contoh penjelasan diatas, perintah pada kodenya adalah untuk hanya menyalakan 2 lampu yang berada di tengah saja.

ACALL         DELAY     Adalah sebagai pemanggil perintah delay.

SJMP           START    Adalah sebagai pengarah kode untuk kembali ke START

Semua kalimat di belakang tanda ‘;’ adalah komentar, hanya sebagai penjelas makna dari kode.


Setelah penulisan kode selesai, kita dapat menyimpan kode program tersebut. Sebelum ke tahap selanjutnya, kita harus terlebih dahulu meng-compile dengan tujuan mengetes kode, apakah terjadi sebuah error atau tidaknya. Yaitu dengan cara sebagai berikut :



Apabila tidak terdapat error seperti pada gambar berikut ini, maka kode sudah dapat dijalankan. Dan proses meng-compile ini juga akan menghasilkan file berekstensi .hex yang akan dipakai untuk mengimplemtasikan kode tersebut.




IV.                 Pengimplementasian kode

Setelah kita memberikan kode perintah-perintah yang akan dijalankan, maka tahap selanjutnya adalah pengimplementasiannya kepada device LED virtual. Maka bukalah aplikasi Top View Simulator.

Saat pertama membukanya, maka akan muncul kotak dialog seperti berikut ini, maka langsung saja klik OK.



Setelah itu maka yang pertama kita lakukan adalah memunculkan tampilan dari device virtualnya, dengan cara klik View > External MoDules > LED.



Selanjutnya pastikan yang muncul adalah P1.



Itulah maksud dari penulisan P1 pada barisan-barisan kode tadi. Apabila bukan P1, maka kita dapat ganti dengan cara klik File > External Modules Setting > LED. Lalu pada kotak Select Port Line ubahlah menjadi P1 seperti pada gambar berikut.




Setelah itu, maka bukalah file .hex yang sebelumnya sudah kita buat dengan cara meng-compile dengan cara klik CTRL+O. Setelah terbuka, maka akan muncul pop-up seperti berikut ini, klik saja OK.



Setelah itu, klik pada tombol GO, maka variasi LED akan berjalan sesuai dengan apa yang dituju pada tutorial kali ini.

Selebihnya mengenai beberapa tombol pada aplikasi Top View, berikut penjelasannya.



1.       GO, untuk memulai program
2.       STOP, untuk menghentikan program
3.       RESET, untuk mengembalikan program ke saat nonaktif

V.                  Penutupan

Seperti itulah tutorial dari kami untuk membuat sebuah variasi gerakan pada lampu LED. Tentunya, kita dapat berkreasi menurut keinginan kita sendiri untuk membuat variasi lain. Yang terpenting adalah kemauan tekad dan juga kerja keras.


Terima kasih atas perhatiannya.


Untuk mengunduh file project ini, klik disini.
Share this article :

Posting Komentar

 
Support : Creating Website | Johny Template | Mas Template
Copyright © 2011. OFFICIAL TIDAKASLI - All Rights Reserved
Template Created by Creating Website Published by Mas Template
Proudly powered by Blogger