Pemrograman USB untuk mengendalikan lampu LED dengan VB
Jumat, 17 April 2015
Assalammualaikum…
bagaimana kabar rekan2 semua? Semoga kesejahteraan selalu di limpahkan
Tuhan kepada kita semua ^^ Nulis apa lagi ya sebagai pembukaannya
..hhmmm…ya udah langsung saja kalo gitu hehe
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;
Dan berikut fungsi2 yang didukungnya;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;
Berikut adalah tool dan alat yang harus kita persiapkan untuk praktek ini;
- 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
- 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;
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.
Berikut penampakan alatnya;
Tidak ada komentar:
Posting Komentar