BAB I
TUJUAN
BAB II
PENDAHULUAN
Port Parallel merupakan port yang paling mendasar digunakan untuk interface
proyek yang dibuat. Port ini memungkinkan untuk menerima inputhingga 9 bit atau
output 12 bit, hanya memerlukan tambahan rangkaian luar yang minimal untuk
mengimplementasikan kerja yang sederhana. Port ini terdiri dari 4 line control, 5 line
status dan 8 line data. Terdapat dibagian belakang PC berupa konektor type-DB 25 pin
female.
Tabel ini memperlihatkan fungsi dari pin yang terdapat pada konektor type-DB
25 yaitu konektor yang digunakan pada port parallel. (Standard IEE 1284)
Pin 2(Isb) s/d 9(msb) : fungsi sebagai line data 8 bit (arah keluar, out)
Pin 1, 14,16, 17 : fungsi sebagai line control (arah masuk/keluar, in/out)
Pin 10, 11, 12, 13, 15 : fungsi sebagai line status (arah masuk, in)
Address Notes
3BCh - 3BFh Used for Parallel Ports which were incorporated on to Video Cards
378h - 37Fh Usual Address For LPT 1
278h - 27Fh Usual Address For LPT 2
Notasi huruf h pada alamat (address) seperti 3BCh, menunjukkan bahwa nilai
alamat adalah dalam bilangan hexadecimal bernilai 3BC. Alamat ini mungkin berbeda
antara satu mesin dengan mesin lainnya.
Alamat line data : 378h
Alamat line status : 379h
Alamat line control : 37Ah
Function bacaport (alamat : word) : byte; Procedure tulisPort (alamat : word, data:byte);
Var begin
Data : byte ; asm
Begin mov dx,alamat
Asm mov al,data
Mov dx,alamat out dx,al
In al,dx end;
Mov data,al end;
End;
bacaPort := data;
End
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 sampai penyimpanan program
yang akan dibuat. Dideklarasikan pada bagian implementasi bagian atas.
BAB III
LANGKAH KERJA
1. Klik kanan pada icon my computer, pilih property sehingga tampil jendela Sistem
Properties lalu pilih hardwere|Device Manager|Ports(c0m&LPT) sehingga terlihat
jendela tersebut.
2. Untuk melihat alamat port parallel (LPT/Printer Port) klik kanan pada printer Port
(LPT1) pilih properties|pilih resources, terlihat jendela alamat yang digunakan.
3. Melakukan pencarian alamat interface lainnya sesuai table berikut dan isikan ke table
tersebut.
No Interface Alamat No Interface Alamat
Port Parallel
1 (LPT1) 5 Mouse
2 Port Serial (Com1) 6 USB
Floppy disk
3 Port Serial (Com2) 7 controller
4 Keyboard 8 Speaker
B. Membangun Aplikasi Port Paralel Menggunakan prosedur dan fungsi I/O menggunakan
bahasa assembly.
4. Membuat program untuk menagani event klik pada tombol baca Port decimal,
Private
{Private Declaration}
Function bacaPort(add:word):byte;
Procedure tulisPort(add:word;data:byte);
Public
{Private Declaration}
End;
Var
Form1:TForm1;
Implementation
{$R*.DFM}
Function TForm1.bacaPort(add:word):byte;
Var
Data :byte;
Begin
Asm
Mov dx.addr
In al,dx
Mov dat,al
End;
Result:=data;
End;
Procedure TForm1.tulisPort(addr:word;data:byte);
Begin
Asm
Mov dx,addr
Mov al,data
Out dx,al
End;
End;
Procedure TForm1.Button3Click(sender:TObject);
Begin
Edit1.text:=inttostr(portin($379));
End;
End.
5. Menjalankan program, jika terjadi error pada procedure atau function, berarti
procedure dan fungsi ini tidak jalan pada computer yang ada, hapus procedure dan
function tersebut gantikan dengan deklarasi procedure dan function dari io.dll, file
io.dll berada dalam folder yang sama dengan aplikasi.
Private
{ private declarations}
Public
{Public declarations}
End;
Var
Form1:TForm1;
Implementation
{$R*.DFM}
Procedure Portout(Port:word:Data:Byte);stdcall;ecternal’io.dll’;
Function PortLn (Port:Word):byte;stdcall;external’io.dll’;
Procedure TForm1.Button3click(Sender:TOcject);
Begin
Edit1.text:=inttostr(portin($379));
End;
End.
6. Membuat program untuk menangani event klik pada button baca Port in Hex sbb:
Procedure TForm1.button1click(Sender:Object);
Begin
FADILA RYAZ POLITEKNIK NEGERI PADANG
1101033032
II B EL MANDIRI
ALGORITMA DAN PEMROGRAMAN KOMPUTER
Edit1.text:=Format(‘%X’,[portin($379)]);
End;
BAB IV
ANALISA
Pada praktikum kali ini mengenai port parallel maka dapat praktikan analisa
berdasarkan praktikum yang telah praktikan lakukan.Praktek port parallel merupakan
sebuah dasar pada sebuah PC atau komputer yang dapat diprogram secara mudah untuk
melakukan proses kontrol ataupun terhadap perangkat keras lainnya. Untuk melakukan
akses ke port parallel sebuah PC maka kita harus mengetahui alamat dari masing–masing
port untuk mengetahiu alamat tersebut maka kita dapat menggunakan bahasa
assembly.dengan menggunakan bahasa tersebut maka kita dapat melakukan pengiriman
maupun penerimaan data dengan port parallel.Untuk program pengambilan data dari
interface diperlukan fungsi atau prosedur yang mampu membaca input dan output dari
port. Disini kita menggunakan io.dlldanFile io.dlluntuk interface ngnya. Pada program
ini kita membuat aplikasi port paralel menggunakan delphi dengan cara mendesain
interfacenya terlebih dahulu.
BErikut adalah bentuk interface yang praktikan buat pada Delphi.
Private
{ Private declarations }
Public
{ Public declarations }
end;
Var
Form1: TForm1;
Implementation
{$R *.DFM}
Dengan menggunakan program diatas programnya tidak jalan jalan atau eror,
maka hapus prosedur dan fungsi tersebut gantikan dengan deklarasi prosedur dan fungsi
dari io,dll,file io.dll berada dalam folder yang sama dengan aplikasi .
Private
{private declaration}
Function bacaport (addr:word);byte;
Procedure tulisport(addr:word;data:byte);
Public
{public declaration}
End,
Var
Form1:TForm1;
Implementation
{$R*.DFM}
Function TForm1.bacaPort(addr:word):byte;
Var
Data:byte;
Begin
Asm
Movdx,addr
In al,x
Movdata,al
End;
Result:=data;
End;
Procedure TForm1.Button3Click(Sender:TObject);
Begin
Edit1.text:=inttostr(portin($379));
End;
End.
BAB V
PENUTUP
Berdasrakan praktikum yang telah praktikan lakukan maka dapat praktikan dapat kan
kesimpulan sebagai berikut :
1. Penggunaan Prosedure dan fungsi I/O hanya hanya dapat digunakan dalam bahasa
assembly dan dapat dijalankan pada komputer pentium 3 keatas. Untuk mengatasinya
dapat digunakan file dynamic library link (i/o Berdasarkan hasil praktek, praktikan
mungkin gagal karena hasil program yang telah diisikan tidak berhasil untuk dijalankan.