Selasa, 31 Juli 2012

Rangkaian Tester Stick PlayStation (PS)

Sudah tidak asing lagi bagi kita untuk memakai joystick playstation. Kita sering memakainya saat bermain game. Tapi, yang seringkali menjadi masalah adalah bagaimana mengetahui tombol-tombol joystick mana yang masih berfungsi dan yang tidak. Nah, oleh karena itu saya akan membagikan cara mudah untuk bisa melakukan pengecekan tombol joystick playstation.


Yang akan kita lakukan adalah membuat sebuah alat yang bisa membaca data joystick kemudian menampilkannya. Alat tersebut akan kita buat dari mikrokontroler Atmega8 dan ditampilkan ke dalam LCD 2×16. Kita cukup memakai Atmega8 karena port i/o yang dimiliki Atmega8 sudah cukup untuk membantu kita dalam membuat alat ini. Komunikasi yang dipakai adala komunikasi serial peripheral interface (spi).

Yang harus kita siapkan adalah:
1. Minimum sistem Atmega8 dengan kristal 8 MHz
2. Lcd 2×16
3. Konektor usb to playstation stick (sisi yang pertama, header usb, yang satunya memiliki header female joystick) bisa kita dapatkan di toko-toko komputer.
4. Joystick playstation.
5. Komputer dengan software CodeVision AVR (untuk mempermudah pemrograman)

Berikut gambar rangkaian:


Prinsip kerja :


Alat ini menggunakan mikrokontroler Atmega8 untuk dapat berkomunikasi dengan joystick. Car komunikasinya adalah dengan komunikasi spi. Terdapat protokol wajib yang harus dituliskan ke dalam program agar kita dapat mengakses data yang dikirim dari joystick.


Protokol wajib itu berupa :
Mikrokontroler mengirim byte pertama yaitu, 0×01 sebagai awalan komunikasi.
Lalu mikrokontroler mengirim byte kedua yaitu, 0×42 sekaligus menerima tipe joystick, 0×41 saat mode digital dan 0×73 saat mode analog.
Lalu mikokontroler berturut-turut menerima data dari joystick. Tabel byte yang diterima dari joystick bisa dilihat dari referensi lain.
Kemudian, data yang sudah diterima itu lalu ditampilkan ke LCD. Yang tampil pada LCD sesuai dengan tombol apa yang ditekan. Contoh, saat kita menekan tombol R1 pada joystick, maka pada LCd juga akan tampl R1.


Software program:
Download Source Code disini

Kendala-kendala:
  • Sulitnya mencari konektor female joystick. Konektor female ini berfungsi agar kita tidak harus membongkar joystick.
  • Warna kabel joystick yang hampir mirip. Saya mengalami kesulitan saat membedakan warna. Saat itu saya salah menyambung kabel. Warna orange saya kira coklat dan warna orange yang saya kira orange.
  • Referensi yang sedikit.
  • Pada percobaan pertama, banyak terdapat kesalahan dan halangan. Dari sisi hardware,terjadi salah menyambung jalur LCD, jalur MOSI dan MISO dari konektor female, sampai rusaknya regulator tegangan. Lalu dari sisi software, kesalahan pengaturan pin keluaran LCD, kesulitan memahami komunikasi spi (karena ini pertama kali saya memakai spi), kesalahan sintaks-sintaks pemrograman mendasar dan juga salah menuliskan kondisi inputan yang seharusnya aktif low, tetapi saya tuliskan aktif high.
Solusi:
  • Akhirnya konektor female dari joystick saya dapatkan dari konektor usb to joystick yang saya beli di hi tech mall. Saya memotong satu konektor female dari konektor usb to joystick yang saya beli.
  • Tes dengan buzzer pada avo meter untuk memastikan kabel orange dan coklat.
  • Saya memahami dan membaca berulang-ulang sebuah artikel dari situs, nugroho.staff.uii.ac.id berkali-kali dan dengan lebih teliti lagi.
  • Pada saat menuliskan program pahami betul-betul prinsip komunikasi SPI dan pahami betul protokol komunikasi dengan joystick.

Hasil akhir:
  • Alat yang saya buat sudah bisa berkomunikasi dengan baik dengan joystick playstation, baik ketika saat mode analog diaktifkan atau dinonaktifkan.
  • Hasil pembacaan data joystick sudah dapat tampil pada LCD.

3 komentar:

  1. kalo stik ps2 nya wirreles itu inputan tegangannya pake 5v apa 3.3 volt ya?

    BalasHapus
  2. gan mw tanya angka biner dapat nya dari mna ??

    BalasHapus
  3. Casino Review - Dr.mCD
    The casino's welcome offer 포천 출장마사지 is 부천 출장안마 100% up to 동두천 출장샵 $1000 and the first deposit is 100% 천안 출장샵 up to $1000! This bonus is also available for existing players to claim. 제천 출장샵

    BalasHapus