Isi kandungan:

Pengawal Permainan Paddle USB: 7 Langkah (dengan Gambar)
Pengawal Permainan Paddle USB: 7 Langkah (dengan Gambar)

Video: Pengawal Permainan Paddle USB: 7 Langkah (dengan Gambar)

Video: Pengawal Permainan Paddle USB: 7 Langkah (dengan Gambar)
Video: CARA KELUAR YANG BENAR DARI SUPERCARS!! #PRESTIGESHORTS #shorts 2024, November
Anonim
Pengawal Permainan Paddle USB
Pengawal Permainan Paddle USB
Pengawal Permainan Paddle USB
Pengawal Permainan Paddle USB
Pengawal Permainan Paddle USB
Pengawal Permainan Paddle USB

Anak saya mengadakan permainan video retro malam untuk ulang tahunnya, dan pada pagi hari saya memutuskan untuk melihat apakah saya dapat membuat sepasang pengawal permainan paddle USB untuk Pong dengan bantuan pencetak 3D dan elektronik dari simpanan saya. Walaupun saya berjaya membuat mereka bekerja pada waktunya, orang terlalu sibuk dengan permainan lain untuk Pong pada akhirnya.

Pengawal boleh digunakan untuk Pong dengan emulator tahap litar DICE atau dengan versi pygame saya yang cukup tepat, untuk permainan Atari 2600 dengan emulator, dan untuk fungsi seperti Etch-a-Sketch dengan program lukisan seperti Tux Paint.

Terdapat tiga mod yang boleh ditukar:

  • Stelladaptor paddle emulation: mereka harus berfungsi dengan semua perisian emulasi Atari 2600 yang menyokong Stelladaptor; dalam mod Stelladaptor, dayung berfungsi sebagai kayu bedik dua tombol paksi, setiap dayung mengendalikan satu paksi dan satu butang
  • dwimulasi joystick: setiap dayung berfungsi sebagai kayu bedik dengan satu butang (dengan pergerakan dayung diterjemahkan ke pergerakan pada kedua paksi kayu bedik)
  • tetikus: setiap dayung mengawal satu arah gerakan untuk tetikus mutlak, dan butang adalah butang tetikus; bersama dengan program melukis anda boleh mendapatkan peranti berteknologi tinggi yang serupa dengan Etch-a-Sketch.

Bekalan

Anda perlu:

  • pil biru stm32f103c8t6
  • Potensiometer linear 2x (saya akan mengesyorkan 20K-100K)
  • 2x 12mm lebar microswitch dengan butang
  • Pencetak 3D
  • miscelleanous (filamen, wayar, solder, solder, lem panas)

Langkah 1: Siapkan Papan dan Persekitaran Arduino

Siapkan Dewan dan Persekitaran Arduino
Siapkan Dewan dan Persekitaran Arduino
Siapkan Papan dan Persekitaran Arduino
Siapkan Papan dan Persekitaran Arduino
  1. Selesaikan enam pin pengepala di tengah papan stm32f103c8t6 anda.
  2. Periksa rintangan antara A12 dan 3.3V. Seharusnya 1.5K untuk keserasian USB yang lebih lengkap. Sebilangan besar papan mempunyai 10K sebagai gantinya. Sekiranya anda adalah salah satu daripadanya, ideal solder dalam perintang 1.8K dari A12 hingga 3.3V, walaupun anda mungkin bernasib baik dan komputer anda berfungsi dengan 10K.
  3. Pasang pemuat but. Terdapat arahan dalam Langkah 2 dari Instructable ini. Satu perkara yang perlu diperhatikan adalah ukuran kilat yang dilaporkan oleh STM Demonstrator. Sekiranya ia 32K, anda mempunyai stm32f103c8 palsu yang mungkin merupakan stm32f103c6 yang dilabel semula. Projek ini harus tetap berfungsi, tetapi perhatikan bahawa anda mempunyai papan palsu untuk langkah selanjutnya.
  4. Pasang teras berasaskan Arduino, Arduino Zero dan Roger mengikut arahan dalam Langkah 3 dari Instructable yang anda gunakan pada langkah sebelumnya. Abaikan arahan perpustakaan dalam langkah itu.
  5. Muat turun keluaran terbaru perpustakaan Komposit USB saya dan lepaskan zip di folder Arduino / Perpustakaan anda.
  6. Muat turun lakaran pengendali paddlecontrollers saya dan lepaskan zip di folder Arduino anda.
  7. Di Arduino, pergi ke Alat | Papan | Generik STM32F103C Series, kecuali jika anda mempunyai papan c6 palsu, maka pilihlah Generik STM32F103C6 / STM32F103C8 palsu. Sekiranya anda tidak pasti yang anda miliki, memilih pilihan palsu sebenarnya lebih selamat.

Langkah 2: Muat naik

Muat naik
Muat naik

Pasangkan papan ke penyesuai USB komputer anda, muatkan sketsa pengawal paddlecontroller, dan klik butang Muat naik (anak panah menunjuk kanan). Sekiranya semuanya berjalan lancar, lakaran tersebut harus dimuat naik, dan papan iklan akan muncul di komputer anda sebagai kayu bedik dua paksi dua tombol yang disebut "Stelladaptor". Di Windows, anda boleh mengesahkannya dengan Windows-R, joy.cpl [enter].

Sudah tentu, ini tidak akan berlaku sehingga anda memasang perkakasan yang lain.

Langkah 3: Cetak

Cetak
Cetak
  1. Muat turun fail stl dan / atau scad dari halaman Thingiverse saya untuk projek ini. Harap maklum bahawa tombol dayung diubah suai dari sini.
  2. Sekiranya lebar perumahan microswitch anda berbeza dari 12mm, anda perlu menyesuaikan parameter lebar butang dalam fail paddlemain-standalone.scad. Anda boleh melakukannya di OpenSCAD atau di Thingiverse Customizer.
  3. Anda mungkin perlu mengubah ukuran dalam fail paddleknob.scad agar sesuai dengan potensiometer anda.
  4. Cetak fail ini (hanya buat satu salinan fail "2x" jika anda hanya mahukan satu dayung). Saya menggunakan PLA, tetapi ABS juga mesti berfungsi dengan baik.

    • 2x paddlemain.stl
    • 2x paddleknob.stl
    • 1x paddleconverter.stl
    • 1x pcbholdernarrower.stl
    • 2x buttoncap110.stl (pilihan)
    • 1x 12.stl (pilihan; cetak dengan warna yang berbeza dan lekatkan untuk melabelkan dua dayung)

Langkah 4: Pendawaian

Pendawaian
Pendawaian
Pendawaian
Pendawaian
Pendawaian
Pendawaian

Anda perlu menjalankan empat wayar dari papan stm32f103c ke setiap pengawal dayung. Anda boleh menggunakan kabel USB lama untuk wayar ini. Saya kebetulan mempunyai wayar mandiri dari kabel ethernet yang saya terikat bersama-sama dengan shrink wrap.

Setiap dayung mempunyai satu microswitch dan satu potensiometer. Gunakan multimeter untuk mengenal pasti sepasang pin bersebelahan (bukan pepenjuru) pada microswitch yang disambungkan / terputus dengan menekan butang. Saya akan melabelkan pin ini S1 dan S2 dalam rajah. Tiga pin pada potensiometer yang telah saya labelkan P1, P2 dan P3 dari atas ke bawah, melihat dari bahagian bawah potensiometer, dengan pin menunjuk ke kanan.

Tolak empat wayar dari papan melalui lubang di sisi perumahan dayung (paddlemain.stl).

Semasa menyambungkan wayar ke microswitch, tekan wayar terlebih dahulu melalui lubang di sisi perumahan dayung dan pateri ke suis sementara suis terletak di bahagian luar perumahan. Kemudian tarik suis ke perumahan, membuat pin dan wayar yang terpasang sesuai di lubang. Saya memotong pin yang tidak perlu.

Kedua-dua dayung:

  • P1 hingga S1
  • P1 untuk menaiki 3.3V (3.3)
  • P3 untuk menaiki GND (G)

Dayung 1:

  • P2 untuk menaiki A1
  • S2 untuk menaiki A2

Dayung 2:

  • P2 untuk menaiki A3
  • S2 untuk menaiki A4

Sekarang uji sambungan dengan menyambung ke komputer anda dan menggunakan program ujian kayu bedik. Pada tingkap, Windows-R, joy.cpl [enter], pilih Stelladaptor, klik pada Properties. Paddle 1 harus mengawal paksi-X dan butang pertama; dayung 2 harus mengawal paksi-Y dan butang kedua.

Langkah 5: Perhimpunan Akhir

Pemasangan akhir
Pemasangan akhir
Pemasangan akhir
Pemasangan akhir
Pemasangan akhir
Pemasangan akhir
Pemasangan akhir
Pemasangan akhir

Penyakit mikro boleh terpaku (lem panas melakukan tugas untuk saya) di lokasi mereka di sisi kotak dayung. Tombol butang dapat dihidupkan, dengan sedikit gam panas untuk kestabilan.

Potensiometer melekat pada lubang besar di bahagian atas kotak dayung. Tombol harus meluncur dan melekat. Besarkan lubang dengan gerudi mengikut keperluan. Tekan penutup bawah, tambahkan sedikit gam panas jika anda mahu.

Papan pil biru sesuai di dalam slaid PCB, yang kemudiannya memaut ke bahagian bawah kotak penukar, yang juga mempunyai penutup yang dapat menutupnya.

Saya menambah sedikit Shoe Goo di mana wayar memenuhi perumahan untuk melindungi wayar. Dan saya menempelkan label "1" dan "2" di dayung.

Langkah 6: Kaedah Operasi

Kaedah Operasi
Kaedah Operasi
Kaedah Operasi
Kaedah Operasi

Dayung mempunyai tiga mod operasi. Anda boleh menukar modus operasi dengan menekan kombinasi butang tertentu sambil memasangkannya ke port USB, melepaskan setelah LED papan berhenti berkedip. Sebaik sahaja anda menukar mod operasi, ia akan disimpan ke memori flash, dan akan kekal sehingga anda menukarnya seterusnya. (Jadi, jika anda tidak ingin mengubah mod, jangan tekan butang apa pun sambil memasukkan dayung ke port USB.) Berikut adalah pilihannya:

  • Butang dayung kiri sahaja: Satu batang bedik dua butang dua paksi, dengan setiap paksi dan butang dikendalikan oleh satu dayung. Lebih-lebih lagi, dayung mengenal pasti sebagai Stelladaptor, penyesuai USB yang dihentikan untuk pengawal Atari 2600, dan begitu emulator Atari 2600 seperti Stella dan Z26 yang serasi dengan Stelladapter harus berfungsi dengan sempurna.
  • Kedua-dua butang dayung: Setiap dayung menunjukkan kayu bedik yang terpisah. Joystick mempunyai satu butang operasi, dan memutar dayung menggerakkan joystick secara menyerong, jadi paksi X atau Y berfungsi untuk mendayung.
  • Butang dayung kanan sahaja: Dayung muncul sebagai tetikus mutlak dua butang. Anda sekarang boleh menggunakan ini sama dengan Etch-a-Sketch dengan program menggambar.

Langkah 7: Pong

Pong
Pong
Pong
Pong

Pong adalah permainan dayung asli yang hebat. Saya mengesyorkan versi asalnya, kerana klon sering kali gagal memasukkan semua fungsi halus yang indah, seperti perubahan kelajuan dengan hits berulang, sudut berubah bergantung pada bahagian dayung yang memukul bola, atau kedudukan yang halus tetapi tidak mudah diramalkan dari servis selepas ketinggalan. Untuk analisis yang teliti dari yang asli, lihat di sini.

Salah satu kaedah terbaik untuk bermain Pong adalah dengan emulator tahap litar DICE jika komputer anda cukup pantas untuk menggunakannya pada kelajuan penuh. (Komputer riba Windows saya, tetapi Raspberry PI 3+ terlalu lambat.) Saya cadangkan versi 0.8.

Sekiranya anda menggunakan mod Stelladaptor di dayung, pergi ke Tetapan | Konfigurasikan Input… dalam DICE dan pilih Joystick 1 dan Absolute for Player 1 Paddle, dan tetapkan Horizontal dan Vertical ke Joy 1 X-Axis. Kemudian lakukan perkara yang sama untuk Pemain 2 Paddle, kecuali dengan Y-Axis.

Sekiranya komputer anda terlalu lambat untuk DICE, saya membuat versi Python3 + pygame yang masa dan fungsinya dimaksudkan sangat dekat dengan Pong yang asal (saya berterima kasih atas bantuan dari Dr. Hugo Holden dalam hal ini).

Disyorkan: