Anda di halaman 1dari 17

BAB IV

ANALISA PERCOBAAN

Pada Praktikum yang ke 12 ini kita akan mempelajari dan mempraktekkan


tentang fungsi dari Instrksi Logika SHL dan SHR. SHL merupakan sebuah fungsi yang
dapat merubah data (parameter) yang diberikan kepada fungsi tersebut dengan cara
menggeser posisi bit biner dari data tersebut 1 bit ke kiri atau lebih (tergantung
isntuksi). Sebaliknya SHR akan menggeser posisi bit biner dari data tersebut 1 bit atau
lebih ke kanan (tergantung instruksi).

A. Membangun aplikasi led hidup 1 buah dan berjalan ke kiri menggunakan fungsi SHL

Pada Poin A ini, pertama –tama kita terlebih dahulu membuat sebuah form
sederhana seperti yang terlihat pada gambar A.1 dibawah ini.

Gambar A.1
Untuk membuat halaman diatas, praktikan menggunakan komponen-komponen
sebagai berikut :

 Menggunakan komponen button, bitbtn, timer, shape dan animate


 Komponen button

Dengan menekan symbol tombol button pada component palette

Simbol komponen button

Selanjutnya mengklik kiri pada form, maka akan muncul komponen edit1 :

 Menggunakan komponen BitBtn


Komponen BitBtn ini juga terdapat pada komponen palette.
Komponen BitBtn seperti gambar dibawah ini :

Bitbtn terdapat beberapa aplikasi yang ada pada BitBtn ini, diantaranya :
bkClose, bkAll, bkAlbort, bkCancel, bkCostum, bkNo, bkYes, bkRight, dan
lain-lain. Dengan menggunakan BitBtn ini kita tidak perlu menjankan program
pada aplikasi yang kita inginkan. Misal pada bkClose sama fungsi nya dengan
button yang menjalankan aplikasi close,bedanya disini kita tidak memerlukan
program untuk menjalankan aplikasi close tersebut.

Selanjutnya mengklik kiri pada form, maka akan muncul komponen


BitBtn1 :

Apabila kita menginginkan bkClose maka pilih pada Objeck


Inspectornya yang terdapat pada kind ganti dengan bkClose seperti gambar
dibawah ini :

Dengan mengganti bkClose pada kind nya maka pada Form akan muncul
tampilan seperti gambar dibawah ini :

 Komponen shape
Bentuk dari shape dapat dipilih melalui properti shape. Ada 6 bentuk
yang bisa dipilih, yaitu : stCircle, stEllipse, stRectangle, stRoundRect,
stRoundSquare, dan stSquare. Komponen shape ini bisa terlihat atau tidak pada
Form adalah dengan menetapkan nilai property visible bernilai true atau false.
Bentuk dasar dari objek komponen shape ini adalah

Bentuk dasar komponen shape

Stellipse

Stcircle

 Komponen Timer
Time merupakan komponen pengatur waktu yang ada pada tab system
dengan tab icon:

Timer

Gunakan Komponen Pengatur waktu ini untuk mencetuskan (mentrigger)


suatu peristiwa (event), untuk satu waktu ataupun berulang-ulang, setelah
melalui suatu interval waktu yang ditentukan. Hal ini dilakukan dengan
menetapkan jumlah hitungan waktu (interval) pada komponen waktu tersebut.

Tugas dari timer adalah untuk menetapkan suatu hitungan waktu yang
mesti dilakui sebelum event timer di trigger menggunakan properti interval.
Untuk menghentikan event yang di kerjakan oleh timer adalah dengan
memberikan nilai false pada properti enabled dari komponen timer.

Dengan menggunakan timer bersama fungsi logika SHL dan SHR dapat
dilakukan pengontrolan operasi dari led peraga seperti gambar 1 dengan
berbagai variasi (running led).

Dengan Menggunakan Kalmat Program sebagai berikut :


unit Unit1;

interface

uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
Buttons, ExtCtrls, StdCtrls;

type
TForm1 = class(TForm)
Button1: TButton;
Button2: TButton;
Timer1: TTimer;
BitBtn1: TBitBtn;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Timer1Timer(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

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

var data: byte;

procedure TForm1.Button1Click(Sender: TObject);


begin
timer1.Enabled:=true;
data:=$01;
end;

procedure TForm1.Button2Click(Sender: TObject);


begin
timer1.Enabled:=false;
end;

procedure TForm1.Timer1Timer(Sender: TObject);


begin
portout($378,data);
data :=data shl 1;
if data=$00 then
data:=$01;
end;

end.

Setelah selesai mebuat kalimat program tersebut pada listingnya, maka sudah
bisa program dijalankan, apabila program berhasil akan muncul sebuah form seperti
pada gambar A.2 di bawah ini :
Gambar A.2

Kemudian Bisa di tekan Tombol Starat , maka bisa diperhatikan apa yang terjadi
LED yang sebelumnya dipasang pada Port Paralel, Bisa diperhatikasn gambar A.3
dibawah ini, ini adalah gambar LED yang bergerak dari kana kekiri secara bergantian.

B. Membangun aplikasi led hidup 1 buah dan berjalan ke kanan menggunakan fungsi SHR
Sama dengan Percobaan di atas, pertama kita juga membuat sebuah Form sederhana
seperti gambar B.1 dibawah ini.

Setelah membuat Form itu, kita memasukkan kalimat programnya, kalimat program
yang kita pakai hampir sama dengan kalimat program pada percobaan di atas, bedanya
adalah pada percobaan ini SHL kita ganti dengan SHR. Kalimat Programnya adalah
sebagai berikut:

unit Unit1;

interface

uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
Buttons, ExtCtrls, StdCtrls;

type
TForm1 = class(TForm)
Button1: TButton;
Button2: TButton;
Timer1: TTimer;
BitBtn1: TBitBtn;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Timer1Timer(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

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

var data: byte;

procedure TForm1.Button1Click(Sender: TObject);


begin
timer1.Enabled:=true;
data:=$01;
end;

procedure TForm1.Button2Click(Sender: TObject);


begin
timer1.Enabled:=false;
end;

procedure TForm1.Timer1Timer(Sender: TObject);


begin
portout($378,data);
data :=data shr 1;
if data=$00 then
data:=$01;
end;

end.

Setelah selesai memasukkan kalimat program tersebut, maka program sudah bisa
di jalankan, setelah menjalankan program ini akan muncul gambar B.2 di bawah ini:

Gambar A.2
Setelajh muncul gambar ini, maka di tekan Tombol Start dan amati yang terjadi,
lampu akan bergerak dari kiri ke kanan dengan kecepatan 1 detik, lampu ini akan hidup
secara bergantian, tergantung oerintah yang kita berikan. Maka bisa diperhatikan
gambar B.3 di bawah ini:

Ket: LED akan menyala dari kiri ke kanan secara bergantian

Pada praktek ini kia menggunakan Port Paralel yang menggunakan Prinsip
Common Cathode. Yang artinya bagian katoda dari semua Led akan terhububung
paralel sehingga ketika diberi logika 1, LED akan menyala. Tetapi pada bagian
keluaran dari resistor yang telah terpasang pada LED akan harus terlebih dahulu diberi
logika 0.

Hasil Program SHL

Pada program kali ini, didapat hasil perjalanan LED dari kanan kekiri dengan
menggunakan fungsi SHL sebagai berikut :

Nilai Keadaan Lompatan Bit dan Waktu setiap pergeseran


No
Operand arahnya (detik)
1 1 Lompatan 1 lampu / arah kiri 1 detik
2 2 Lompatan 2 lampu / arah kiri 1 detik
3 3 Lompatan 3 lampu / arah kiri 1 detik
4 4 Lompatan 4 lampu / arah kiri 1 detik
5 5 Lompatan 5 lampu / arah kiri 1 detik
6 6 Lompatan 6 lampu / arah kiri 1 detik
7 7 Lompatan 7 lampu / arah kiri 1 detik

Hasil yang di peroleh adalah tiap satu detik terjadi lompatan ke led
berikutnya. Lompatan dapat di atur dengan cara mengubah : data:=$01; menjadi
data:=$02; untuk 2 lompatan langsung, data:=$03; untuk 3 lompatan langsung dan
seterusnya. Untuk mengubah setingan waktunya, dapat setting pada interval timernya.
Semakin kecil interval waktunyanya, maka sakan semakin cepat pula perpindahan LED
nya.

Hasil Program SHR

Pada program ke dua ini, terdapat sedikit perbedaan yaitu pergerakkan arah
led yang dari kiri, berubah ke kanan. Sehingga di peroleh hasil tabel berikut:

No Nilai Keadaan Lompatan Bit dan Waktu setiap pergeseran


Operand arahnya (detik)
1 1 Lompatan 1 kekanan 1 detik
2 2 Lompatan 2 kekanan 1 detik
3 3 Lompatan 3 kekanan 1 detik
4 4 Lompatan 4 kekanan 1 detik
5 5 Lompatan 5 kekanan 1 detik
6 6 Lompatan 6 kekanan 1 detik
7 7 Lompatan 7 kekanan 1 detik

Pada percobaan kedua ini, terjadi lompatan tiap 1 lompatan ke kanan. Di


karenakan pada percobaan kedua ini di gunakan instruksi SHR. SHR adalah akan
menggeser bit ke kanan. Sehingga LED melakukan 1 lompatan ke kanan. Instruksi yang
di ubah adalah :
data:=data shr 1;

dan untuk merubah lompatannya, dapat di ubah dengan mengubah settingan data:=$01;
dengan data bit yang kita inginkan agar terjadi lompatan 2, 3,4 lompatan.

Pada fungsi timmer kita dapat mengatur interval waktunya dengan cara memilih
evnt pada timer kemudian kita atur besar kec ilnya interval yang akan digunakan. Dapat
juga dilakukan dengan membuat instrusi tambahan seperti:
Timmer1.Interval1:= timmer1, interval – 100; (untuk mengurangi interval awal dengan
100)
Timmer1.Interval1:= timmer1, interval + 100; (untuk menambahkan interval awal
dengan 100)
Jika Interval waktu yang diberikan kecil maka perpindahan LED akan semakin cepat
begitu pula sebaliknya jika interval waktu timmernya besar maka perpindahan atau
perubahan LED akan semakin lambat.
BAB V
KESIMPULAN

1. Port paralel (DB-25) adalah salah satu jenis soket pada personal komputer
untuk berkomunikasi dengan peralatan luar seperti printer model lama. Karena
itu parallel port sering juga disebut printer port. Perusahaan yang
memperkenalkan port ini adalah Centronic, maka port ini juga disebut dengan
Centronics port.
Kesederhanaan port ini dari sisi pemrograman dan antarmuka dengan hardware
membuat port ini sering digunakan untuk percobaan-percobaan sederhana dalam
perancangan peralatan elektronika.
2. Parallel port sering digunakan untuk interface dalam pembuatan suatu proyek.
Port ini dapat memungkinkan input sampai 9 bit sekaligus atau output sampai 12
bit pada saat yang sama sehingga meminimalkan rangkaian eksternal dalam
penggunaannya. Port parallel terdiri dari 4 jalur control, 5 jalur status, 8 jalur
data dan sisanya tidak dihubungkan atau juga dapat dihubungkan sebagai
ground. Parallel port sering ditemukan pada PC sebagai konektor male/female
25 pin.
3. Semua data, kontrol, dan status dari port paralel berhubungan dengan register-
register yang ada didalam komputer. Dengan mengakses langsung register-
register tersebut, masukan dan keluaran dari port paralel dapat diatur. Register-
register pada port paralel adalah:
Register data
Register status
Register kontrol
4. Prosedur dan fungsi seperti diatas tidak jalan pada computer Pentium 3 keatas.
Untuk mengatasi hal ini sebagai alternative dapat digunakan file dynamic library
link (i/o.dll) yang berada diluar file Delphi. File ini dicopykan ke folder tempat
penyimpanan program yang akan dibuat. Dideklarasikan pada bagian
implementasi bagian atas.
Untuk mendeklarasikan file library i/o tersebut adalah sbb.
Procedure PortOut (Port : Word; Data : Byte); stdcall; external ‘io.dll’;
Function Port In (Port : Word) : byte; stdcall; external ‘io.dll’;

5. SHL =adalah instruksi untuk melakukan lompatan bit ke kiri.


6. SHR = adalah instruksi untuk melakukan lompatan ke kanan.
7. Timer berfungsi untuk mengatur jeda waktu dan kecepatan dalam melakukan
proses running.
8. Untuk melakukan perubahan dalam waktu, dapat di setting pengaturan timer
nya.
9. Semakin kecil interval yang dibuat, maka akan semakin cepat led berjalan. Hal
ini dilakukan dengan mengatur event pada Timer

Anda mungkin juga menyukai