Categories
Mikrokontroler Pembelajaran

Akses Port Paralel (Menggunakan Visual BASIC 6.0)

Dibutuhkan suatu cara agar VB bisa melakukan akses perangkat keras. Salah satunya dengan pustaka io.dll, yang bisa didownload dari http://www.geekhideout.com/iodll.shtml (juga dengan
dokumentasi lengkap, bagi programmer Delphi silahkan jenguk website tersebut) secara gratis, yang harus disimpan atau ditempatkan pada folder <drive>:/windows/system32 pada komputer
Anda.

Cara penggunaannya sangat mudah, Pertama definisikan terlebih dahulu fungsi dan prosedur untuk akses masukan maupun keluaran perangkat keras pada bagian modul khusus VB sebagai berikut:

Public Declare Sub PortOut Lib "io.dll" _
(ByVal Port As Integer, ByVal Data As Byte)

Public Declare Sub PortWordOut Lib "io.dll" _
(ByVal Port As Integer, ByVal Data As Integer)

Public Declare Sub PortDWordOut Lib "io.dll" _
(ByVal Port As Integer, ByVal Data As Long)

Public Declare Function PortIn Lib "io.dll" _
(ByVal Port As Integer) As Byte

Public Declare Function PortWordIn Lib "io.dll" _
(ByVal Port As Integer) As Integer

Public Declare Function PortDWordIn Lib "io.dll" _
(ByVal Port As Integer) As Long

Public Declare Sub SetPortBit Lib "io.dll" _
(ByVal Port As Integer, ByVal Bit As Byte)

Public Declare Sub ClrPortBit Lib "io.dll" _
(ByVal Port As Integer, ByVal Bit As Byte)

Public Declare Sub NotPortBit Lib "io.dll" _
(ByVal Port As Integer, ByVal Bit As Byte)

Public Declare Function GetPortBit Lib "io.dll" _
(ByVal Port As Integer, ByVal Bit As Byte) As Boolean

Public Declare Function RightPortShift Lib "io.dll" _
(ByVal Port As Integer, ByVal Val As Boolean) As Boolean

Public Declare Function LeftPortShift Lib "io.dll" _
(ByVal Port As Integer, ByVal Val As Boolean) As Boolean

Public Declare Function IsDriverInstalled Lib "io.dll" () As Boolean

Kedua gunakan fungsi dan prosedur tersebut secara biasa, fungsi PortIn membutuhkan dua parameter yaitu alamat perangkat keras dan variabel hasil pembacaan data dari perangkat keras dengan tipe data byte. Sedangkan prosedur PortOut membutuhkan dua parameter juga, yaitu alamat perangkat keras dan nilai atau variabel yang menyimpan nilai yang akan dikirimkan ke perangkat keras yang bersangkutan.

  • PortOut : Mengirim data dalam format byte (8-bit) ke port tertentu.
  • PortWordOut : Mengirim data dalam format word (16-bit) ke port tertentu.
  • PortDWordOut : Mengirim data dalam format double word (32-bit) ke port tertentu.
  • PortIn : Membaca data falam format byte (8-bit) dari port tertentu.
  • PortWordIn : Membaca data falam format word (16-bit) dari port tertentu.
  • PortDWordIn : Membaca data falam format double word (32-bit) dari port tertentu.
  • GetPortBit : Membaca status dari bit tertentu.
  • SetPortBit : Set bit (=1) pada port tertentu.
  • ClrPortBit : Reset bit (=0) pada port tertentu.
  • NotPortBit : Lakukan inversi (NOT) bit pada port tertentu
  • RightPortShift : Geser bit dari port tertentu ke kanan, LSB -> MSB.
  • LeftPortShift : Geser bit dari port tertentu ke kiri, MSB -> LSB.
  • IsDriverInstalled : Akan memberikan nilai bukan-NOL jika io.dll sudah terinstal dan berfungsi. Tujuan utama dari fungsi ini adalah untuk memastikan bahwa penggerak mode kernel pada NT/2000/XP telah diinstal dan dapat diakses.

Informasi selengkapnya bisa diunduh DISINI. Sedangkan informasi buku ANTARMUKA disini.