Anda di halaman 1dari 11

Kementerian Riset, Teknologi,

dan Pendidikan Tinggi


TU Republik
POLITEKNIK NEGERI PADANG

LAPORAN PRAKTIKUM ALGORITMA PEMOGRAMAN

JOB 9
KONTROL LAMPU RUANGAN

pe

Nama : Ihsanul Fikri


Nomor BP : 1901032012
Kelas :1C
Instruktur : - Julsam,M.Kom.
- Fibriyanti,SST.,M.T.
- Zulka Hendri,ST.,M.T.

PROGRAM STUDI D.III TEKNIK LISTRIK


POLITEKNIK NEGERI PADANG
TAHUN AKADEMIK 2019/2020
BAB I
TUJUAN

1. Mengetahui penggunaan operator logika AND dan OR


2. Mampu penggunaan 1 button untuk 2 aksi (on dan off)
3. Membangun aplikasi I/O port paralel untuk mengontrol lampu ruangan
BAB II
TEORI DASAR

Salah satu port pada port paralel adalah port data (data line) yang terdiri dari 8 bit (pin 2 s/d
pin 9) yang berada pada alamat 378h. Pada penggunaan port paralel untuk kontrol lampu
ruangan, menghidupkan atau mematikan lampu dilakukan dengan mengirimkan data 1 atau 0
ke lampu yang bersangkutan. Setiap bit pada port dapat digunakan untuk mengontrol sebuah
lampu.

Pengiriman data untuk menghidupkan lampu adalah dengan mengirimkan logika 1 ke bit yang
besesuaian. Tentunya pengiriman data ini jangan sampai berakibat pada kontrol lampu yang
lain. Agar ini tidak terjadi instruksi dengan operator AND dan OR dapat digunakan. Nilai data
yang ada saat mengirimkan data di AND-kan atau di-OR kan agar didapat bit yang sesuai.

Contoh:
Misalkan nilai data = 02h ; untuk menghidupkan lampu pada Pin 2
Untuk menghidupkan lampu pada pin 3 data yang dikirim adalah:

data lama : 00000010 (02h)


di-OR-kan dengan : 00000100 (04h)
data baru dihasilkan : 00000110 (06h) = data baru yang dikirim

instruksinya : Data := Data OR 04h

Pengiriman data untuk mematikan lampu tertentu harusnya tidak sampai mematikan lampu
yang lain. Untuk itu perlu dipilih dengan tepat dan benar pin yang akan dimatikan (0). Untuk
memungkinkan hal ini digunakan instruksi dengan operator AND, artinya data yang terakhir
ada akan di AND-kan dengan nilai yang sesuai untuk memilih agar pin tertentu mati (pada
posisi bit yang akan dimatikan di-AND dengan 0 sedangkan yang lainnya dengan 1).

Contoh:
Misalkan nilai data = 0Bh
Jika ingin mematika lampu pada pin 5 maka data yang dikirim adalah:

data lama : 00001011 (0Bh)


di-AND-kan dengan : 11110111 (F7h),
data baru dihasilkan : 00000011 (03h)

Instruksinya : Data := Data AND F7h

P2

P3

P4

P5

P6

P7

P8

P9 Gnd

Gambar 1. Rangkaian Simulasi Lampu Ruangan


BAB III
LANGKAH KERJA

A. Membangun aplikasi untuk mengontrol lampu rangan

1. Buatlah sebuah form yang bisa menggambarkan model control lampu ruangan,
antara lain berisi:
i. 4 buah lampu ruangan dengan shape circle kecil, saat run tidak terlihat
ii. 4 buah sakelar yang berfungsi toggle menggunakan button
iii. Dilengkapi dengan sebuah button exit

2. Dengan asumsi lampu 1 s/d 4 dikendalikan oleh port parallel pin 2 s/d 5 (nibble
low), Buatkan instruksi untuk mengaktifkan 4 buah fungsi sakelar lampu tersebut.
Salah satu program sakelar (untuk lampu 1) sbb:

implementation

{$R *.DFM}
procedure PortOut(Port : Word; Data : Byte); stdcall; external 'io.dll';
function PortIn (Port : Word) : byte; stdcall; external 'io.dll';

var data : byte;


procedure TForm1.FormActivate(Sender: TObject);
begin
data := $00;
portout($378,data); // mematikan semua lampu sebagai inisialisasi
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
if shape1.visible=false then
begin //menghidupkan bit ke 0 (P2)
button1.caption:='off';
button1.hint:='Click for off';
data := data or $01;
portout($378,data);
shape1.visible:=true ;
end
else
begin //mematikan bit ke 0 (P2)
button1.caption:='on';
button1.hint:='Click for on';
data := data and $fe;
portout($378,data);
shape1.visible:=false;
end;
end;

end.
3. Lengkapi program untuk fungsi saklar yang lain seperti program diatas,kita tinggal
mengubah button dan shape yang akan kita fungsikan pada program diatas.
4. Jalankan program dan catat hasil penggunaan fungsi sakelarnya sbb:
No.Sakelar Sakelar Sakelar Sakelar L1 L2 L3 L4
1 2 3 4
Klik 1 Klik 1 Klik 1 Klik 1
Klik 2 Klik 2 Klik 2 Klik 2
Klik 3 Klik 3 Klik 3 Klik 3
Klik 4 Klik 4 Klik 4 Klik 4
Klik 5 Klik 5 Klik 5 Klik 5
Klik 6 Klik 6 Klik 6 Klik 6
Klik 7 Klik 7 Klik 7 Klik 7
Klik 8 Klik 8 Klik 8 Klik 8
BAB IV
HASIL PERCOBAAN
A. membangun aplikasi untuk mengontrol lampu ruangan
Berdasarkan pembuatan sesuai langkah kerjanya didapatkan Hasil setelah menekan speed bar run
.
BAB V
ANALISA

Analisa program III.A


Pada program ini kita menggunakan 4 shape yang kita umpamakan sebagai lampu pada
program ini,lalu 4 button yang kita umpamakan sebagai saklar pada program ini untuk
menghidupkan/mematikan lampu atau shape pada program ini,dan komponen label hanya
digunakan untuk menamakan program ini yaitu ‘MENGONTROL LAMPU RUANGAN’.
Pada program ini kita menggunakan io.dll sebagai port data input/output,penggunaan
io.dll ini hanya tinggal kita sisipkan pada project yang telah kita buat sehingga tidak
merepotkan/mengganggu program kita.
Pada setiap button kita masukkan program yang sama untuk mengontrol masing-
masing shape yang kita umpamakan sebagai lampu ini.
Program yang kita masukkan adalah sebagai berikut:
procedure TForm1.Button .. Click(Sender: TObject);
begin
if shape .. .visible=false then
begin //menghidupkan bit ke 0 (P2)
button.. .caption:='off';
button.. .hint:='Click for off';
data := data or $01;
portout($378,data);
shape.. .visible:=true ;
Pada perintah diatas saat keempat button running,lalu kita klik dulu masing-masing
button maka shape 1,2,3,4 akan menghilang dengan perintah false dan caption pada button
akan berubah menjadi off yang menyatakan bahwa lampu/shape sedang mati lalu untuk
menyalakannya kita masukkan perintah menghidupkan bit ke 0(P2) sehingga dengan bantuan
hint dan kita masukkan program data or $01 menyatakan nilai benar maka saat kita klik io.dll
akan mengirim data ke button dan shape akan muncul kembali/menyatakan lampu menyala
dengan perintah true.

end
else
begin //mematikan bit ke 0 (P2)
button.. .caption:='on';
button.. .hint:='Click for on';
data := data and $fe;
portout($378,data);
shape.. .visible:=false;
end;
end;
Lalu untuk mematikan lampu/menghilangkan shape 1,2,3,4 kita masukkan perintah
mematikan bit ke 0(P2) artinya io.dll memanggil kembali program yang sudah terinput tadi
lalu saat kita klik button maka captionnya menjadi on ini bergunaagar menandakan bahwa
lampu mati dan jika ingin menyalakan tinggal klik saja,lalu dengan bantuan .hint dan data $e
yang menyatakan nilai salah maka data akan keluar dari shape dan shape/lampu akan
menghilang dari layar dengan perintah false.
Program diatas kita gunakan dan masukkkan ke masing- masing button,hanya tinggal
mengubah shape/button keberapa yang kita fungsikan,pada program ini masing-masing button
kita gunakan untuk mengontrol masing-masing shape/lampu.
Pada program ini io.dll lah yang mengirim bit/data ke shape sehingga saat
dimasukkkan program data maka io.dl lah yang bertugas menginput/output data pada program
ini,penggunaaan io.dll ini memudahkan kita karena hanya perlu memanggilnya dengfan
program memasukkan bit atau mematikan bit.
BAB VI
KESIMPULAN

Kesimpulan
Setelah melaksanakan praktikum,praktikan mengambil kesimpulan:

- Port pada port paralel yang terdiri dari 8 bit dapat di gunakan sebagai kontrol untuk
menghidupkan lampu setelah di kirimkan data 1 atau 0.

- Untuk mematikan 1 lampu tetapi tidak menyinggung lampu lain, digunakan lah operator
AND.

- Jika suatu Rangkaian menggunakan prinsip common cathode lampu akan menyal jika diberi
logika 1.

- Jika suatu Rangkaian menggunakan prinsip common Anode lampu akan menyal jika diberi
logika 0.

Anda mungkin juga menyukai