Anda di halaman 1dari 8

PRAKTIKUM 1

PENGENDALIAN OUTPUT LED


1.1

Tujuan Instruksional Khusus

Dapat mengetahui cara mengakses output port mikroprosesor

Dapat melakukan interface mikroprosesor dengan output LED

Dapat melakukan pemrograman mikroprosesor untuk mengakses output


LED

1.2

Dasar Teori
LED (Light Emmitting Diode) merupakan sebuah piranti elektronika

yang bekerja seperti dioda dan memancarkan cahaya apabila diberi tegangan
maju. Terkadang kita membutuhkan sesuatu yang dapat menyala untuk
memberitahukan apa yang sedang terjadi, dan LED merupakan piranti
sederhana yang sesuai untuk kebutuhan tersebut.

Gambar 1.1 Bentuk fisik LED dan simbolnya


LED pada mikrokontroler umumnya digunakan sebagai perangkat output
atau sebagai indikator. LED dapat secara langsung dihubungkan ke port-port
di

mikrokontroler. Untuk mengakses port-port mikrokontroler, kita dapat

menggunakan register P0, P1, P2, dan P3.


1.3

Daftar alat dan bahan

1. Software Proteus 7
2. Software MIDE-51

3. Unit Komputer
1.4.

Keselamatan Kerja

1. Menggunakan pakaian praktikum dengan baik dan rapi


2. Sambungkan perangkat-perangkat yang digunakan sesuai dengan petunjuk
pembimbing praktikum
3. Jalankan sistem setelah mendapat izin dari pembimbing praktikum.
1.5. Gambar Kerja

Gambar 1.2 Rangkaian interface menghubungkan LED ke mikrokontroler

1.6

Program Mikrokontroler

Program 1.
LOOP:

DELAY:
ULANG:
DELAY1:

ORG
SETB
SETB
SETB
SETB
CLR
CLR
CLR
CLR
ACALL
CLR
CLR
CLR
CLR
SETB
SETB
SETB
SETB
ACALL
SJMP
MOV
MOV
DJNZ
DJNZ
RET

0000h
P3.0
P3.1
P3.2
P3.3
P3.4
P3.5
P3.6
P3.7
DELAY
P3.0
P3.1
P3.2
P3.3
P3.4
P3.5
P3.6
P3.7
DELAY
LOOP
R1,#0FFH
R0,#0FFH
R0,DELAY1
R1,ULANG

;matikan port 3.0


;matikan port 3.1
;matikan port 3.2
;matikan port 3.3
;nyalakan port 3.4
;nyalakan port 3.5
;nyalakan port 3.6
;nyalakan port 3.7
;matikan port 3.0
;matikan port 3.1
;matikan port 3.2
;matikan port 3.3
;nyalakan port 3.4
;nyalakan port 3.5
;nyalakan port 3.6
;nyalakan port 3.7

Program 2.
MULAI:

DELAY:
DELAY1:

ORG
MOV
ACALL
MOV
ACALL
SJMP
MOV
DJNZ
RET

0000h
P3,#0FH
DELAY
P3,#0F0H
DELAY
MULAI
R0,#0FFH
R0,DELAY1

1.7

Langkah Percobaan
a. Hubungkan LED ke port 3 seperti pada gambar rangkaian.
b. Buat program seperti pada program 1 dan kompile serta jalankan
program tersebut.
c. Catat penunjukkan indikator LED pada Tabel 1.1
d. Buat program seperti pada program 2 dan kompile serta jalankan
program tersebut.
e. Catat penunjukkan indikator LED pada Tabel 1.2
f. Lakukan analisis data dan buatlah kesimpulan-kesimpulan yang
diperoleh

1.8

Data
Tabel 1.1 Data Percobaan untuk program 1

Tampilan
ke
1
2
3
4
5
6

P3.7

P3.6

P3.5

P3.4

P3.3

P3.2

P3.1

P3.0

ON
OFF
ON
OFF
ON
OFF

ON
OFF
ON
OFF
ON
OFF

ON
OFF
ON
OFF
ON
OFF

ON
OFF
ON
OFF
ON
OFF

OFF
ON
OFF
ON
OFF
ON

OFF
ON
OFF
ON
OFF
ON

OFF
ON
OFF
ON
OFF
ON

OFF
ON
OFF
ON
OFF
ON

Tabel 1.2 Data Percobaan untuk program 2


Tampilan
P3.7
ke
1
ON
2
OFF
3
ON
4
OFF
5
ON
6
OFF
1.9
Pertanyaan

P3.6

P3.5

P3.4

P3.3

P3.2

P3.1

P3.0

ON
OFF
ON
OFF
ON
OFF

ON
OFF
ON
OFF
ON
OFF

ON
OFF
ON
OFF
ON
OFF

OFF
ON
OFF
ON
OFF
ON

OFF
ON
OFF
ON
OFF
ON

OFF
ON
OFF
ON
OFF
ON

OFF
ON
OFF
ON
OFF
ON

a. Lakukan analisis terhadap hasil percobaan


b. Buatlah kesimpulan terhadap hasil analisis yang telah dilakukan

c. Apa saja perbedaan terhadap hasil program 1 dan program 2.


d. Apa yang anda dapatkan dari kedua percobaan yang telah dilakukan.
e. Buatlah program untuk mengoperasikan LED dengan konfigurasi sebagai
berikut:
Tampilan
ke
1
2
3
4
5
6
7

P3.7

P3.6

P3.5

P3.4

P3.3

P3.2

P3.1

P3.0

Menyatakan LED tidak beroperasi (off)


Menyatakan LED beroperasi (on)

JAWABAN
a. Analisa program
Program 1
LOOP:

DELAY:
ULANG:
DELAY1:

ORG
SETB
SETB
SETB
SETB
CLR
CLR
CLR
CLR
ACALL
CLR
CLR
CLR
CLR
SETB
SETB
SETB
SETB
ACALL
SJMP
MOV
MOV
DJNZ
DJNZ
RET

0000h
P3.0
P3.1
P3.2
P3.3
P3.4
P3.5
P3.6
P3.7
DELAY
P3.0
P3.1
P3.2
P3.3
P3.4
P3.5
P3.6
P3.7
DELAY
LOOP
R1,#0FFH
R0,#0FFH
R0,DELAY1
R1,ULANG

;matikan port 3.0


;matikan port 3.1
;matikan port 3.2
;matikan port 3.3
;nyalakan port 3.4
;nyalakan port 3.5
;nyalakan port 3.6
;nyalakan port 3.7
;memanggil delay
;matikan port 3.0
;matikan port 3.1
;matikan port 3.2
;matikan port 3.3
;nyalakan port 3.4
;nyalakan port 3.5
;nyalakan port 3.6
;nyalakan port 3.7
;memanggil delay
;lompat ke loop
;mematikan seluruh port

Program 2
MULAI:

ORG
MOV

0000h
P3,#0FH

ACALL DELAY
MOV
P3,#0F0H

DELAY:
DELAY1:

ACALL DELAY
SJMP MULAI
MOV
R0,#0FFH
DJNZ
R0,DELAY1
RET

; menyalakan port 3.0 sampai 3.3


dan mematikan port 3.4 sampai
3.7
;memanggil delay
; matikan port 3.0 sampai 3.3
Dan menyalakan port 3.4 sampai
3.7
;memanggil delay
;lompat ke mulai
;mematikan semua port

b. Kesimpulan
Program 1
-

Pada program ini pertama kita membuat sebuah loop untuk menghidupkan
dan mematikan led tertentu pada saat bersamaan

Untuk menghidupkan led, menggunakan SETB.

Untuk mematikan led, menggunakan CLR.

Program 2
-

Pada program ini, untuk menghidupkan led dan mematikan beberapa led.
Menggunakan register.

Untuk menyalakan port 3.0 sampai 3.3 dan mematikan port 3.4 sampai
3.7 menggunakan register #OFh

Untuk mematikan port 3.0 sampai 3.3 dan menyalakan port 3.4 sampai 3.7
menggunakan register #0FFh

c. Perbedaan
-

Untuk hasil percobaan tidak memiliki perbedaan, hasil hidup-mati lednya


sama. Yaitu bila port 3.0 sampai 3.3 hidup maka port 3.4 sampai 3.7 mati,
begitu sebaliknya

- yg terjadi perbedaan adalah pada program. Bila pada program 1 syntaq


programnya lebih panjang, makan pada pada program 2 syntaq nya di
perpendek dengan menggunakan register

d. Apa yang didapatkan


-

Dari hasil kedua percobaan diatas, saya memahami bahwa untuk


menghidupkan led bisa menggunakan 2 cara. Cara pertama yaitu dengan
menggunakan SETB atau CLR dan yg kedua menggunakan register

Pada percobaan 1 kita bisa mengotak atik led sesuka hati kita, maksudnya
kita bisa menghidupkan led atau mematikan led sesuka hati kita dimna
letaknya.

Pada percobaan 2 yaitu menggunakan register, menurut saya sulit untuk bsa
menghidupkan atau mematikan led sesuka hati kita, karena programnya sulit
dipahami.

e. Tugas Program
ORG
0000h
LOOP: CLR P3.0
SETB P3.1
SETB P3.2
SETB P3.3
SETB
P3.4
SETB
P3.5
SETB
P3.6
CLR
P3.7
ACALL DELAY
SETB
P3.0
CLR
P3.1
SETB
P3.2
SETB
P3.3
SETB P3.4
SETB P3.5
CLR P3.6
SETB P3.7
ACALL DELAY
SETB
P3.0
SETB
P3.1
CLR
P3.2
SETB
P3.3
SETB P3.4
CLR P3.5
SETB P3.6
SETB P3.7
ACALL DELAY
SETB
P3.0
SETB
P3.1
SETB
P3.2
CLR
P3.3
CLR P3.4
SETB P3.5
SETB P3.6
SETB P3.7

SETB P3.4
CLR P3.5
SETB P3.6
SETB P3.7
ACALL DELAY
SETB
P3.0
CLR
P3.1
SETB
P3.2
SETB
P3.3
SETB P3.4
SETB P3.5
CLR P3.6
SETB P3.7
ACALL DELAY
CLR
P3.0
SETB
P3.1
SETB
P3.2
SETB
P3.3
SETB P3.4
SETB P3.5
SETB P3.6
CLR P3.7
ACALL DELAY
SJMP LOOP
DELAY:
ULANG:
DELAY1:
DJNZ
RET
END

MOV
R1,#0FFH
MOV
R0,#0FFH
DJNZ R0,DELAY1
R1,ULANG

ACALL DELAY
SETB
P3.0
SETB
P3.1
CLR
P3.2
SETB
P3.3

Anda mungkin juga menyukai