Porta paralel: Perbedaan antara revisi

Konten dihapus Konten ditambahkan
Yoyokits (bicara | kontrib)
Yoyokits (bicara | kontrib)
C++ code
Baris 135:
| -
|}
 
Simbol n didepan suatu nama sinyal seperti pada nAck berarti active low.
 
== Register-register dari Port Paralel ==
Baris 142 ⟶ 144:
# Register kontrol
Pada umumnya di komputer personal alamat dasar LPT1 adalah 0x378 (378 [[hexadecimal]]) dan LPT2 adalah 0x278. Alamat dari ketiga register tersebut diatas dapat ditentukan dengan menjumlahkan alamat dasar dari port paralel dengan bilangan desimal tertentu. Misalnya kita ingin mengakses register data dari port paralel LPT1, alamat register datanya sama dengan alamat dasar dari LPT1 yaitu 0x378. Sedangkan alamat register status sama dengan alamat register dasar + 1 atau 0x379 dan alamat register kontrolnya sama dengan alamat register dasar + 2 atau 0x37A. Hal tersebut berlaku juga pada LPT2. Untuk lebih jelasnya, dapat dilihat ditabel dibawah ini:
 
{| class="wikitable"
|-
Baris 157 ⟶ 158:
| 0x279
|-
| Register kontrol (alamat dasar + 2)
| 0x37A
| 0x27A
|}
 
== Pemrograman Paralel Port dengan C++ ==
Untuk mengambil data dari port paralel dengan C++, dilakukan dengan perintah seperti yang tersebut dibawah ini:
<source lang="cpp">
#include <conio.h>
 
// Perintah-perintah untuk mengambil data dari suatu port, termasuk port paralel
 
int _inp(
unsigned short port
);
 
unsigned short _inpw(
unsigned short port
);
 
unsigned long _inpd(
unsigned short port
);
</source>
 
Dimana port adalah alamat dari port dan nilai kembalian adalah nilai dari register data pada port paralel. Perintah _inp, _inpw, dan _inpd mempuyai fungsi yang sama, perbedaannya hanyalah type dari nilai kembalian. Untuk _inp bernilai int, _inpw bernilai unsigned short, dan untuk _inpd bernilai unsigned long. Perintah-perintah diatas tidak berlaku untuk Windows NT/2000 atau XP karena di kedua sistem operasi tersebut tidak diperbolehkan akses langsung hardware. Hal ini dikarenakan untuk perlindungan terhadap pemakaian suatu hardware oleh beberapa software secara bersamaan. Untuk mengatasinya dibutuhkan file Inpout32.dll yang baru, yang telah dimodifikasi supaya dapat mengakses hardware. Pustaka Inpout32.dll menggunakan driver standar yang diatur oleh Windows untuk mengakses hardware, jadi keamanan pemakaian hardware oleh software menjadi lebih terjamin.
 
[[Kategori:Bus komputer]]