สารบัญ:
วีดีโอ: เกมคอนโทรลเลอร์ไร้สายพร้อม Arduino และ NRF24L01+ (รองรับคอนโทรลเลอร์หนึ่งหรือสองตัว): 3 ขั้นตอน
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:05
คุณสามารถค้นหาโครงการทั้งหมดได้จากเว็บไซต์ของฉัน (เป็นภาษาฟินแลนด์):
นี่เป็นการบรรยายสรุปสั้นๆ เกี่ยวกับโครงการ ฉันแค่อยากจะแบ่งปันหากมีคนต้องการสร้างและอ่านภาษาฟินแลนด์ไม่ได้
คุณเคยคิดที่จะเล่นเกมบนเว็บกับเพื่อน ๆ ของคุณ แต่การทำแผนที่แย่มากจนคุณเล่นได้ยากหรือไม่? ไม่ต้องกังวล เพราะคุณสามารถสร้างตัวควบคุมของคุณเองด้วยการแมปแบบกำหนดเอง ฉันเข้ารหัสคอนโทรลเลอร์เพื่อจำลองแป้นพิมพ์ USB แต่คุณสามารถใช้มันเป็นอะไรก็ได้ที่คุณต้องการ
ขั้นตอนที่ 1: อะไหล่
นี่คือฮาร์ดแวร์ที่คุณต้องการ:
- Arduino Pro Mini 2 ชิ้น (ATmega328P หรืออย่างอื่นจะทำ)
- โมดูล NRF24L01+ จำนวน 2 ชิ้นสำหรับการสื่อสารไร้สาย
- Arduino Leonardo หรือ Arduino Pro Micro (ตัวรับ)
- ตัวเครื่องพิมพ์ 3 มิติ (ลิงค์ด้านล่างสำหรับไฟล์)
- โปรแกรมเมอร์ ISP หรือ USB -> ตัวแปลง RS232 เพื่อตั้งโปรแกรมคอนโทรลเลอร์
- ปุ่ม 20*20 มม. จำนวน 16 ชิ้น
- แบตเตอรี่ Li-ion 2 ชิ้นสำหรับคอนโทรลเลอร์ (REMEMBER PROTECTION CIRCUITS! You don't want to kill yourself! Iขอแนะนำ TP4056-board ซึ่งมี USB-charing และการป้องกันในบอร์ดเดียวกัน!)
- สวิตช์สไลด์ขนาดเล็ก 2 ชิ้น (เช่น SS12D00G3)
- สายเยอะมาก
- ขั้วต่อดูปองท์ (อุปกรณ์เสริม)
คุณสามารถค้นหารุ่น Fusion 360 ได้จากที่นี่:
ขั้นตอนที่ 2: การเข้ารหัส
จากนั้นเพียงตั้งโปรแกรมคอนโทรลเลอร์ (gamecontroller_dualcontroller.ino สำหรับคอนโทรลเลอร์หากคุณต้องการใช้คอนโทรลเลอร์สองตัวและ gamecontroller.ino หากคุณต้องการใช้เพียงตัวเดียว) และตัวรับ (gamecontroller_dual_receiver_w_keystrokes.ino สำหรับสองตัวและ gamecontroller_receiver_w_keystrokes สำหรับคอนโทรลเลอร์เพียงตัวเดียว)
อย่างไรก็ตาม คุณต้องให้ที่อยู่ที่แตกต่างกันแก่ผู้ควบคุม เพียงเปิด radioLink.ino และเปลี่ยนบรรทัดที่ 22 สำหรับคอนโทรลเลอร์ตัวแรกเป็น: radio.openWritingPipe(address[0]);
และสำหรับตัวควบคุมที่สองนี้:radio.openWritingPipe(address[1]);
หากคุณต้องการเปลี่ยนการแมป ให้เปลี่ยนอาร์เรย์ mapping[8] (หรือ mapping2[8] สำหรับคอนโทรลเลอร์ตัวที่สอง)
คุณสามารถค้นหารหัสจาก GitHub ของฉัน:
ขั้นตอนที่ 3: การประกอบ
วิธีประกอบคอนโทรลเลอร์:
- เพิ่มขั้วต่อที่จำเป็นให้กับวงจรการชาร์จ (และสวิตช์เพื่อปิดเครื่อง)
- กาววงจรการชาร์จไปที่ส่วนล่าง
- เพิ่มสวิตช์แล้วทากาวให้เข้าที่
- ประสาน NRF24L01+ เข้ากับ Arduino (CE ถึงพิน 7 และ CSN ไปที่พิน 8)
- เชื่อมต่อปุ่มต่างๆ (พินอีกอันหนึ่งเข้ากับกราวด์และอีกอันเข้ากับพิน I/O ที่สอดคล้องกัน คุณไม่จำเป็นต้องใช้ตัวเก็บประจุจริงๆ)
- ปิดตู้
วิธีประกอบเครื่องรับ:
- เชื่อมต่อ NRF24L01+ กับ Arduino
- เสร็จแล้ว