Pemrograman USB untuk mengendalikan lampu LED dengan VB
Prosedur ini akan berjalan pertama kali ketika program dijalankan. Program akan mencoba mencari USB HIDClass<->IOConverter melalui fungsi Hid_OpenDevice dan handle dari USB ini akan kita simpan pada iHandle, jika berhasil maka akan di kirim perintah GPIO_DDR_Out(iHandle, &HFF) ke USB HIDClass<->IOConverter untuk memnuat 8 bit port IO-nya sebagai output semua, kemudian mengirim perintah GPIO_Port_Out(iHandle, 0) yang akan membuat ouput GPIO berlogika low (LED mati semua) saat awal program.Jika USB HIDClass<->IOConverter tidak ditemukan maka akan di tampilan pesan pada Label1 bahwa USB HIDClass<->IOConverter tidak terkoneksi.
8. Ketikkan kode program berikut ini pada even CheckBox1_CheckedChanged sampai CheckBox8_CheckedChanged
Private Sub CheckBox1_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CheckBox1.CheckedChanged
If CheckBox1.Checked Then
HIDi.Set_Bit(iHandle, HID_IOConverter_Function.GPIO_Port0)
Else
HIDi.Clear_Bit(iHandle, HID_IOConverter_Function.GPIO_Port0)
End If
End Sub
Setiap kali terjadi peng-klik-an pada CheckBox1 maka LED pada port IO USB HIDClass<->IOConverter akan ON dan OFF.
Pada kesempatan ini kita akan mencoba membuat program sederhana untuk
mengendalikan (ON/OFF) lampu LED melalui port USB. Sebagai mana
komputer/laptop sekarang banyak yang sudah menghilangkan port paralel dan port
serialnya, sebagai gantinya terpasang beberapa port USB.
Lupakan dahulu tentang specifikasi, protokol dan driver USB, kita langsung saja
semudah mungkin bisa menghidupkan dan mematikan lampu LED melalui port
USB. Biasanya setelah praktek bisa menghidupkan LED akan lebih mudah untuk
mempelajari lebih lanjut. Ini merupakan contoh yang sangat sederhana sehingga
mudah untuk diterapkan bagi pemula sekalipun.
Untuk mengotrol LED melalui port USB kita membutuhkan konverter yang bisa
menerjemahkan protokol serial USB menjadi logika high low seperti yang kita
inginkan. Kita tidak bisa menggunakan port USB ini langsung berlogika high atau
low seperti port paralel, kita membutuhkan konverter yang menerjemahkan
protokol
USB ke logika high-low.
Di internet di jual bermacam-macam konverter ini, misal konverter USB ke serial
yang cukup terkenal dari FTDI. Untuk pemograman LED ini kita akan mengunakan
USB I/O Converter dari http://www.satu-microelectronics.com yaitu USB HID IO
Converter yang berupakan USB HID yang tidak memerlukan driver tersendiri, ini
seperti Mouse dan Keyboard USB yang tinggal colok dan langsung bisa digunakan.
USB HID IO Converter merupakan konverter USB ke 8 bit IO, I2C, SPI dan ADC.
USB konverter ini adalah USB kelas HID (Human Interface Device) sehingga tidak
memerlukan instalasi driver USB baik di sistem operasi Windows XP maupun
Windows 7. Sistem operasi tersebut sudah menyediakan drivernya yang tentunya
memudahkan kita dalam menggunakannya. Sistem operasi lain seperti MAC,
Android dan LINUX pun juga sudah menyediakan driver untuk USB kelas HID
sehingga USB HID IO Converterini juga bisa di gunakan pada sistim operasi
tersebut.
Berikut penampakannya;
mengendalikan (ON/OFF) lampu LED melalui port USB. Sebagai mana
komputer/laptop sekarang banyak yang sudah menghilangkan port paralel dan port
serialnya, sebagai gantinya terpasang beberapa port USB.
Lupakan dahulu tentang specifikasi, protokol dan driver USB, kita langsung saja
semudah mungkin bisa menghidupkan dan mematikan lampu LED melalui port
USB. Biasanya setelah praktek bisa menghidupkan LED akan lebih mudah untuk
mempelajari lebih lanjut. Ini merupakan contoh yang sangat sederhana sehingga
mudah untuk diterapkan bagi pemula sekalipun.
Untuk mengotrol LED melalui port USB kita membutuhkan konverter yang bisa
menerjemahkan protokol serial USB menjadi logika high low seperti yang kita
inginkan. Kita tidak bisa menggunakan port USB ini langsung berlogika high atau
low seperti port paralel, kita membutuhkan konverter yang menerjemahkan
protokol
USB ke logika high-low.
Di internet di jual bermacam-macam konverter ini, misal konverter USB ke serial
yang cukup terkenal dari FTDI. Untuk pemograman LED ini kita akan mengunakan
USB I/O Converter dari http://www.satu-microelectronics.com yaitu USB HID IO
Converter yang berupakan USB HID yang tidak memerlukan driver tersendiri, ini
seperti Mouse dan Keyboard USB yang tinggal colok dan langsung bisa digunakan.
USB HID IO Converter merupakan konverter USB ke 8 bit IO, I2C, SPI dan ADC.
USB konverter ini adalah USB kelas HID (Human Interface Device) sehingga tidak
memerlukan instalasi driver USB baik di sistem operasi Windows XP maupun
Windows 7. Sistem operasi tersebut sudah menyediakan drivernya yang tentunya
memudahkan kita dalam menggunakannya. Sistem operasi lain seperti MAC,
Android dan LINUX pun juga sudah menyediakan driver untuk USB kelas HID
sehingga USB HID IO Converterini juga bisa di gunakan pada sistim operasi
tersebut.
Berikut penampakannya;
Dan berikut fungsi2 yang didukungnya:
Berikut adalah tool dan alat yang harus kita persiapkan untuk praktek ini;
1. Sambungkan LED ke kaki2 USB HID IO Converter seperti gambar berikut;
- Komputer/Laptop yang ada port USB nya.
- Visual Basic NET (pada contoh ini digunakan Visual basic Express Ediotion 2005 dengan OS Windows 7)
- USB HID IO Converter
- Lampu LED , resistor 1K Ohm (jika tidak ada maka bisa dilangsungkan saja) dan kabel untuk menyambungkan kaki LED ke terminal USB HID IO Converter.
1. Sambungkan LED ke kaki2 USB HID IO Converter seperti gambar berikut;
Setelah rangkaian LED telah dibuat, maka sekarang adalah pembuatan program yang digunakan untuk mengontrol LED tersebut. File source code-nya dapat di download disini : http://www.satu-microelectronics.com/attach_file/VB.NET%20LED%20Driver.zip
5. Klik menu ProjectAdd Referencedan tambahkan HID_IOConverter_NET.dllseperti gambar dibawah. (Copykan file HID_IOConverter_NET.dll pada folder project terlebih dahulu)
6. Buka ViewCode dan tambahkan code jika ada yang kurang sebagai berikut;
Option Explicit On
Imports Microsoft.Win32.SafeHandles
Imports System.Runtime.InteropServices
Imports HID_IOConverter_NET
7. Tambahkan object class HID_IOConverter_Function dan tambahkan code untuk event Form1_Load berikut;
Dim iHandle As SafeFileHandle
Dim HIDi As New HID_IOConverter_NET.HID_IOConverter_Function
Dim Returns As Long
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
iHandle = HIDi.Hid_OpenDevice
If Not iHandle.IsInvalid Then
Returns = HIDi.GPIO_DDR_Out(iHandle, &HFF)
Returns = HIDi.GPIO_Port_Out(iHandle, &H0)
Else
Label1.Text = “USB HIDClass<->IOConverter tidak terkoneksi… ” _
& “Koneksikan USB HIDClass<->IOConverter trlebih dahulu,” _
& “kemudian buka kembali program ini….”
End If
End Sub
Berikut print screen-nya:
- Buka VB. Pada menu File, klik perintah New Project, lalu klik OK untuk membuat sebuah file executable standar. Simpanlah project dengan nama LED_Driver.
- Klik kontrol Label untuk membuat sebuah label yaitu untuk Label1yang akan kita gunakan untuk menampilkan pesan.
- Buat delapan buah kotak check box. Lihat gambar diatas untuk lokasi penempatan objek. Kotak -kotak check box tersebut nantinya akan menjadi status dari LED yang akan kita kontrol.
- Ubah property danukuran form agar seukuran kotak dialog sedang, seperti Gambar dibawah;
5. Klik menu ProjectAdd Referencedan tambahkan HID_IOConverter_NET.dllseperti gambar dibawah. (Copykan file HID_IOConverter_NET.dll pada folder project terlebih dahulu)
6. Buka ViewCode dan tambahkan code jika ada yang kurang sebagai berikut;
Option Explicit On
Imports Microsoft.Win32.SafeHandles
Imports System.Runtime.InteropServices
Imports HID_IOConverter_NET
7. Tambahkan object class HID_IOConverter_Function dan tambahkan code untuk event Form1_Load berikut;
Dim iHandle As SafeFileHandle
Dim HIDi As New HID_IOConverter_NET.HID_IOConverter_Function
Dim Returns As Long
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
iHandle = HIDi.Hid_OpenDevice
If Not iHandle.IsInvalid Then
Returns = HIDi.GPIO_DDR_Out(iHandle, &HFF)
Returns = HIDi.GPIO_Port_Out(iHandle, &H0)
Else
Label1.Text = “USB HIDClass<->IOConverter tidak terkoneksi… ” _
& “Koneksikan USB HIDClass<->IOConverter trlebih dahulu,” _
& “kemudian buka kembali program ini….”
End If
End Sub
Berikut print screen-nya:
Prosedur ini akan berjalan pertama kali ketika program dijalankan. Program akan mencoba mencari USB HIDClass<->IOConverter melalui fungsi Hid_OpenDevice dan handle dari USB ini akan kita simpan pada iHandle, jika berhasil maka akan di kirim perintah GPIO_DDR_Out(iHandle, &HFF) ke USB HIDClass<->IOConverter untuk memnuat 8 bit port IO-nya sebagai output semua, kemudian mengirim perintah GPIO_Port_Out(iHandle, 0) yang akan membuat ouput GPIO berlogika low (LED mati semua) saat awal program.Jika USB HIDClass<->IOConverter tidak ditemukan maka akan di tampilan pesan pada Label1 bahwa USB HIDClass<->IOConverter tidak terkoneksi.
8. Ketikkan kode program berikut ini pada even CheckBox1_CheckedChanged sampai CheckBox8_CheckedChanged
Private Sub CheckBox1_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CheckBox1.CheckedChanged
If CheckBox1.Checked Then
HIDi.Set_Bit(iHandle, HID_IOConverter_Function.GPIO_Port0)
Else
HIDi.Clear_Bit(iHandle, HID_IOConverter_Function.GPIO_Port0)
End If
End Sub
Setiap kali terjadi peng-klik-an pada CheckBox1 maka LED pada port IO USB HIDClass<->IOConverter akan ON dan OFF.
9. Selesai sudah pembuatan program LED Driver. :)
Menjalankan Program USB HID – LED Driver
Sekarang kita siap menjalankan program LED Driver. Tancapkan USB HIDClass<->IOConverter pada komputer, kemudian klik tombol Start pada Toolbar, maka jika tidak ada kesalahan akan muncul seperti Gambar berikut;
Menjalankan Program USB HID – LED Driver
Sekarang kita siap menjalankan program LED Driver. Tancapkan USB HIDClass<->IOConverter pada komputer, kemudian klik tombol Start pada Toolbar, maka jika tidak ada kesalahan akan muncul seperti Gambar berikut;
Pada awal program, LED akan OFF semua. Peng-klik-an pada CheckBox LED0 – LED7 akan menyalakan LED, peng-klik-an selanjutnya akan mematikan kembali LED.
- Dapatkan link
- X
- Aplikasi Lainnya
Komentar
Posting Komentar