สารบัญ:

Game Boy Reader Controller: 17 ขั้นตอน (พร้อมรูปภาพ)
Game Boy Reader Controller: 17 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: Game Boy Reader Controller: 17 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: Game Boy Reader Controller: 17 ขั้นตอน (พร้อมรูปภาพ)
วีดีโอ: GB Operator (PC based GB/GBC/GBA Cartridge Reader/Player) with Gameplay + GBA Anniversary 2024, พฤศจิกายน
Anonim
ตัวควบคุม Game Boy Reader
ตัวควบคุม Game Boy Reader

ในคำแนะนำนี้ ฉันจะพยายามอธิบายวิธีที่ฉันสร้างอุปกรณ์ด้านบน โดยทำหน้าที่เป็นตัวอ่านคาร์ทริดจ์ Game Boy ซึ่งสามารถอ่าน ROM และอ่าน/เขียน RAM ของเกม Game Boy ได้ หลังจากนั้นเกมจะบูตโดยอัตโนมัติเพื่อให้คุณทำได้ เล่นบนคอมพิวเตอร์ของคุณ ปัจจุบันใช้งานได้บน Windows เท่านั้น

ฉันจะเห็นว่าคำแนะนำนี้ไม่ใช่สำหรับผู้เริ่มต้น คุณต้องมีทักษะการบัดกรีก่อนที่จะลองทำตามคำแนะนำนี้ โปรดอ่านขั้นตอนทั้งหมดก่อนเริ่มต้น ซึ่งจะช่วยประหยัดเวลาและเงิน

โบนัสคุณสามารถใช้อุปกรณ์เป็นตัวควบคุมได้ โชคไม่ดีที่ตอนนี้ฉันมีปัญหากับรหัส ฉันสร้างอุปกรณ์นี้สำหรับโปรเจ็กต์ของโรงเรียน แต่ใช้ส่วนนี้ไม่ได้ จึงเป็นโบนัส หากใครพบวิธีแก้ไขปัญหาโปรดแสดงความคิดเห็นด้านล่างเพื่อให้ทุกคนสามารถเพลิดเพลินกับวิธีการเล่นใหม่นี้

ขั้นตอนที่ 1: อะไหล่ที่จำเป็น:

- สายไฟประมาณ 60 เส้น 20 เซนติเมตร

- ช่องใส่คาร์ทริดจ์ DS (Lite) 2

- Arduino Uno rev. 3

- บอร์ดสร้างต้นแบบขั้นต่ำ 40 รู x 50 รู (แรสเตอร์ประมาณ 2 มม.)

- ไฟ LED 3 มม. (ค่าเริ่มต้นคือสีแดง)

- ตัวต้านทาน 220 โอห์ม

- หมุดส่วนหัว 31 อัน

- 74HC595

- สกรู 2 มม. 4 ตัวที่มีความยาวน้อยที่สุด 25 มม.

ส่วนโบนัส:

- 74HC165

- 5 ปุ่มสัมผัส

- เครื่องเข้ารหัสแบบโรตารี่พร้อมปุ่ม

- ตัวต้านทาน 8 x 10k Ohm

ขั้นตอนที่ 2: เครื่องมือที่จำเป็น:

  • หัวแร้ง
  • ประสาน
  • ก้ามปู
  • คีม
  • คีมปอก
  • แหนบ
  • เครื่องมือโรตารี่หรือมีดยูทิลิตี้
  • เครื่องเจาะ (หรือวิธีการอื่นใดในการเจาะรูบนกระดานต้นแบบ)
  • ไม้บรรทัด (หรือเครื่องมือวัดอื่น ๆ)

ขั้นตอนที่ 3: การสั่งซื้อปลอก

การสั่งซื้อปลอก
การสั่งซื้อปลอก
การสั่งซื้อปลอก
การสั่งซื้อปลอก

เนื่องจากการพิมพ์ 3 มิติอาจใช้เวลานาน เราจึงเริ่มต้นด้วยการสั่งซื้อเคส ซึ่งจะใช้เวลาประมาณ 6 วัน ในระหว่างนี้ คุณสามารถทำส่วนที่เหลือของคำสั่งนี้ได้ การสั่งซื้อดาวน์โหลด 3 ส่วนที่นี่

หลังจากนั้นคุณสามารถสั่งซื้อได้ที่ Oceanz เลือกสีและคุณภาพของคุณเองเพื่อพิมพ์ชิ้นส่วนได้ตามต้องการ อย่าลืมใช้เทคนิคการพิมพ์ SLS ไม่เช่นนั้นปุ่มจะค้างและคุณจะไม่สามารถใช้งานได้

ขั้นตอนที่ 4: บัดกรีสายไฟเข้ากับช่องเสียบตลับหมึก

บัดกรีสายไฟเข้ากับช่องเสียบตลับหมึก
บัดกรีสายไฟเข้ากับช่องเสียบตลับหมึก
บัดกรีสายไฟเข้ากับช่องเสียบตลับหมึก
บัดกรีสายไฟเข้ากับช่องเสียบตลับหมึก
บัดกรีสายไฟเข้ากับช่องเสียบตลับหมึก
บัดกรีสายไฟเข้ากับช่องเสียบตลับหมึก
บัดกรีสายไฟเข้ากับช่องเสียบตลับหมึก
บัดกรีสายไฟเข้ากับช่องเสียบตลับหมึก

เราเริ่มต้นด้วยการบัดกรีหมุดทั้งหมดของช่องเสียบตลับหมึก แต่ก่อนอื่นคุณต้องตัดบางส่วนออกจากอะแดปเตอร์ มิฉะนั้น เกม Game Boy จะไม่พอดี ดูรูปแรกจะได้รู้ว่าต้องตัดชิ้นไหน ตัดพลาสติกสี่เหลี่ยมที่ด้านหลังของช่องตลับหมึกด้วย ด้วยวิธีนี้ คุณจะสามารถเลื่อนรถเข็นเกมไปทางขวาในกล่องได้ในภายหลัง วิธีที่ดีที่สุดในการบัดกรีสายไฟเข้ากับหมุดคือการบัดกรีที่ด้านหลังของสล็อต เพื่อไม่ให้ไปด้านหน้าของอแดปเตอร์ที่แสดงในภาพ คุณสามารถใช้เครื่องมือต่างๆ เพื่อทำให้การบัดกรีง่ายขึ้น SchematicI รวมรูปภาพของแผนผังที่สร้างโดย InsideGadgets ตัวต้านทานเป็นทางเลือกและไม่รวมอยู่ในคำแนะนำนี้เนื่องจากพื้นที่ขนาดเล็กที่เราทำงาน ใช้แผนผังเพื่อทราบว่าสายเคเบิลใดจำเป็นต้องไปที่ไหนและสามารถเชื่อมต่อกันได้

ขั้นตอนที่ 5: การตัดกระดานสร้างต้นแบบ

การตัดกระดานสร้างต้นแบบ
การตัดกระดานสร้างต้นแบบ

Arduino Shield

ขั้นตอนต่อไปคือการบัดกรีสายไฟเข้ากับบอร์ดต้นแบบ ก่อนที่เราจะสามารถทำได้ เราต้องตัดบอร์ดต้นแบบให้ได้ขนาดที่ถูกต้องเสียก่อน มีหลายวิธีในการทำเช่นนี้ ฉันใช้เครื่องมือโรตารี่ แต่คุณยังสามารถใช้มีดยูทิลิตี้เพื่อทำลายชิ้นส่วนได้ มิติสำหรับโล่ เราตัดชิ้นส่วนขนาด 20 x 21 รู หลังจากนั้นคุณสามารถลองใส่หมุดส่วนหัวและตัดให้ได้ขนาดที่ต้องการ ตราบใดที่สามารถเสียบเข้ากับพินทั้งหมดของ Arduino ได้ คุณก็น่าจะดีแม้ว่าพินจะไม่พอดีกับพิน 0 ถึง 7 บน Arduino ดังนั้นฉันจึงตัดส่วนเล็กน้อยของชิลด์บอร์ดและต่อสายไฟเข้ากับหมุดโดยตรง ซึ่งฉันจะแสดงขั้นตอนต่อไป

ขั้นตอนที่ 6: บัดกรีทุกอย่างเข้าด้วยกัน

บัดกรีทุกอย่างเข้าด้วยกัน
บัดกรีทุกอย่างเข้าด้วยกัน
บัดกรีทุกอย่างเข้าด้วยกัน
บัดกรีทุกอย่างเข้าด้วยกัน

หลังจากตัดชิลด์บอร์ดแล้ว เราก็เริ่มประกอบทุกอย่างบนนั้นได้เลย ก่อนอื่นฉันเริ่มด้วยการบัดกรีรีจิสเตอร์ 74HC595 กับบอร์ด ตรวจสอบให้แน่ใจว่าได้ประสานไว้ในที่ที่ไม่สามารถสัมผัสส่วนใด ๆ ของบอร์ด Arduino หลังจากนั้นบัดกรีหมุดส่วนหัวกับ Arduino และทดสอบบอร์ดหลังจากนั้น ถ้าใส่ไม่พอดี ต้องเปลี่ยนให้พอดี

อีกครั้งฉันได้รวมแผนผังเพื่อให้คุณรู้ว่าต้องใช้สายเคเบิลใด กรุณาดูนี้อย่างระมัดระวัง. เนื่องจากเราไม่ใช้ตัวต้านทานใดๆ เราจึงสามารถทำให้เกิดไฟฟ้าลัดวงจรและทอดรีจิสเตอร์กะหรือทำให้ส่วนอื่นๆ เสียหายได้ *** เมื่อคุณบัดกรีสายไฟเข้ากับหมุดส่วนหัวบนแผงชิฟต์ ให้แน่ใจว่าได้ประสานเข้ากับด้านล่างของ คณะกรรมการ. มิฉะนั้น Arduino ที่ติดชิลด์ไว้จะไม่สามารถใส่เข้าไปในเคสได้ ***ขั้นตอนต่อไปคือโบนัส หากคุณต้องการเฉพาะส่วนเครื่องอ่าน Game Boy โปรดทำตามขั้นตอนที่ 12

ขั้นตอนที่ 7: *** โบนัส *** การบัดกรีปุ่ม

*** โบนัส *** บัดกรีปุ่ม
*** โบนัส *** บัดกรีปุ่ม
*** โบนัส *** บัดกรีปุ่ม
*** โบนัส *** บัดกรีปุ่ม
*** โบนัส *** บัดกรีปุ่ม
*** โบนัส *** บัดกรีปุ่ม

ส่วนที่กำลังจะมาถึงเป็นโบนัส

ตอนนี้เราเริ่มต้นด้วยการบัดกรีปุ่ม เรายังใช้ตัวต้านทาน 10k เป็นตัวต้านทานแบบดึงลง ดังนั้นเราจึงได้การกดปุ่มที่แม่นยำยิ่งขึ้น ฉันรวมแผ่นข้อมูลของปุ่มสัมผัส ดูภาพเพื่อดูว่าสายใดไปที่ไหน หลังจากนั้นควรมีลักษณะเหมือนภาพที่สอง

ขั้นตอนที่ 8: *** โบนัส *** การบัดกรี LED และตัวเข้ารหัสแบบหมุน

*** โบนัส *** บัดกรี LED และตัวเข้ารหัสแบบหมุน
*** โบนัส *** บัดกรี LED และตัวเข้ารหัสแบบหมุน
*** โบนัส *** บัดกรี LED และตัวเข้ารหัสแบบหมุน
*** โบนัส *** บัดกรี LED และตัวเข้ารหัสแบบหมุน

นำ

LED นั้นบัดกรีได้ไม่ยาก ขาที่ยาวที่สุดคือด้าน 5V และควรมีตัวต้านทาน 220 โอห์มระหว่างขากับสายไฟ ขาที่สั้นกว่าคือด้านกราวด์และควรบัดกรีด้วยลวดเท่านั้น

ตัวเข้ารหัสโรตารี่

ตัวเข้ารหัสแบบหมุนมีสองด้านพร้อมหมุด ด้านที่มี 3 พินเป็นด้านหมุน อันที่มี 2 พินคือด้านปุ่ม ดูภาพอีกครั้งเพื่อทราบวิธีการต่อสายไฟ

หมุดตรงกลางของส่วนหมุนคือกราวด์ อีกสองพินเป็นหมุดที่ลงทะเบียนการหมุนของชิ้นส่วน พินขวาสุดคือพิน "A" และพินซ้ายสุดคือพิน "B" เพียงแค่ต้องแน่ใจว่าได้ต่อสาย A ไปที่ shift register ก่อนแล้วตามด้วยพิน B มิฉะนั้นคุณจะต้องสลับพินเหล่านี้ในภายหลังในโค้ด นอกจากนี้หมุดที่ไปที่ shift register ควรมีลวดที่มีตัวต้านทาน 10k ด้วย สู่กราวด์

ขั้นตอนที่ 9: *** โบนัส *** การตัดกระดานสร้างต้นแบบอีกอัน

*** โบนัส *** การตัดกระดานสร้างต้นแบบอีกอัน
*** โบนัส *** การตัดกระดานสร้างต้นแบบอีกอัน

สำหรับปุ่ม เราตัดกระดานสร้างต้นแบบอีกอัน บอร์ดนี้จะอยู่ใต้ตัวเข้ารหัสแบบหมุนในเคส เราต้องเจาะรูสองรูสำหรับเครื่องเข้ารหัสแบบโรตารี่ด้วย มิฉะนั้นบอร์ดจะไม่พอดี ขนาดแต่ก่อนอื่นให้ตัดบอร์ดเป็นขนาด 42 มม. x 44 มม. ยังไงก็ตาม บอร์ดจะเข้าไม่ได้ เนื่องจากรูปภาพสามารถพูดได้เป็นพันคำ โปรดดูเอกสารแนบ ส่วนสีแดงจะต้องถูกตัดและเจาะออก

การทำเครื่องหมายวิธีที่ดีที่สุดที่จะทราบว่าตัวเข้ารหัสแบบหมุนพอดีหรือไม่คือการทำเครื่องหมายที่แผงต้นแบบก่อนและดูว่าขอเกี่ยวที่ด้านข้างของตัวเข้ารหัสแบบหมุนอยู่ภายในพื้นที่ที่ทำเครื่องหมายไว้หรือไม่ หลังจากนั้นก็เจาะและตัดชิ้นส่วนออกไป

ขั้นตอนที่ 10: *** โบนัส *** บัดกรีชิ้นส่วนโบนัส

*** โบนัส *** บัดกรีชิ้นส่วนโบนัส
*** โบนัส *** บัดกรีชิ้นส่วนโบนัส

ชิ้นส่วนโบนัสพร้อมที่จะบัดกรีบนบอร์ดแล้ว เริ่มด้วยการบัดกรีรีจิสเตอร์ 74HC165 กับบอร์ด ฉันวาง shift register ไว้ทางด้านขวาของบอร์ด ด้านล่างของ cut off และด้านขวาของตัวเข้ารหัสแบบหมุน แผนผังจากนั้นประสานสายไฟทั้งหมดเข้ากับบอร์ด ฉันแนบแผนผังเพื่อแสดงว่าสายใดควรไปที่ไหน หวังว่านี่จะช่วยประสานทุกอย่างได้ ต้องแน่ใจว่ารู้ว่าทิศทางของ shift register คืออะไร คุณสามารถดูได้ที่เยื้องครึ่งวงกลมเล็ก ๆ เยื้องอยู่ด้านบนของชิป (เช่นเดียวกับที่อยู่ในแผนผัง)

ขั้นตอนที่ 11: *** โบนัส *** ใส่ทุกอย่างลงใน

*** โบนัส *** ใส่ทุกอย่างใน
*** โบนัส *** ใส่ทุกอย่างใน

ตอนนี้ เราควรเตรียมทุกอย่างที่บัดกรีและพร้อมที่จะใส่ในเคส เราเริ่มต้นด้วยส่วนโบนัส เพราะมันจะไปที่ด้านบนของเคส ดังนั้นให้เริ่มต้นด้วยการใส่โรตารี่เอ็นโค้ดเดอร์ หลังจากนั้นเลื่อนในกระดานต้นแบบที่มีขนาดเล็กลงเพื่อให้วางอยู่บนเยื้อง ดูภาพแล้วใส่ปุ่มทั้งหมด สิ่งเหล่านี้ควรเลื่อนเข้ามาค่อนข้างง่าย

ขั้นตอนที่ 12: ใส่ทุกอย่างลงใน

ตอนนี้เราควรเตรียมทุกอย่างที่บัดกรีและพร้อมที่จะใส่ในเคสแล้ว การประกอบก่อนอื่นเรามาใส่ LED กันก่อน โดยอยู่ใต้รูที่ด้านหน้าของอุปกรณ์ ด้านหลังปุ่ม "B"

จากนั้นคุณสามารถเลื่อนเข้าไปในช่องใส่ตลับเกมบอย วิธีที่ดีที่สุดคือการเริ่มต้นด้วยด้านขวา จากนั้นใช้แหนบดันด้านซ้ายเข้าที่ คุณสามารถทดสอบว่าเข้ากันได้หรือไม่โดยเลื่อนตลับเกมบอยเข้าไป ก่อนที่เราจะดำเนินการต่อ ให้ตัดหมุดด้านบน มิฉะนั้น Arduino ร่วมกับชิลด์จะไม่เข้าไปข้างใน

ขั้นตอนที่ 13: เชื่อมต่อทุกอย่าง

ขั้นตอนสุดท้ายของการประกอบคือการเชื่อมต่อโล่กับ Arduino Uno และเลื่อน Arduino เข้าที่ หากคุณบัดกรีสายไฟไว้ที่ด้านล่างของหมุด สายไฟทั้งหมดก็ควรประกอบเข้าด้วยกัน จากนั้นขันสกรูที่ด้านล่างของอุปกรณ์และเราพร้อมที่จะอัปโหลดรหัสไปยังอุปกรณ์

ขั้นตอนที่ 14: การอัปโหลดรหัส Arduino

เรามาถึงขั้นตอนสุดท้ายของคำแนะนำนี้แล้ว ในการใช้อุปกรณ์นี้ เราจำเป็นต้องอัปโหลดโค้ด รหัสนี้มีรหัสโบนัสด้วย ดังนั้นอย่ากังวลไป

โค้ดนี้ใช้ทำอะไร คือมันสื่อสารกับสคริปต์ Python สคริปต์ Python บอก Arduino ว่าต้องทำอะไร จากนั้น Arduino จะรันโค้ดและส่งข้อมูลกลับไปยังสคริปต์ Python ดังนั้นสคริปต์ Python จะบอกอุปกรณ์ว่าจำเป็นต้องดัมพ์เกม Game Boy อุปกรณ์ตอบสนองต่อสิ่งนั้นและเกม Game Boy ของคุณจะถูกดาวน์โหลดไปยังคอมพิวเตอร์ของคุณ เมื่อดาวน์โหลดทั้งเกมและไฟล์บันทึกแล้ว เกมจะเริ่มโดยอัตโนมัติในโปรแกรมจำลอง (BGB)

ดาวน์โหลดและติดตั้ง

โปรดดาวน์โหลดไฟล์.zip ที่แนบมา ประกอบด้วยภาพสเก็ตช์ Arduino ร่วมกับไลบรารีที่กำหนดเอง ในการติดตั้งไลบรารีนี้ คุณต้องคัดลอกโฟลเดอร์ "GBController" ไปยังโฟลเดอร์ Arduino Libraries ซึ่งปกติจะอยู่ที่ "C:\Program Files (x86)\Arduino\libraries"

เมื่อคุณคัดลอกโฟลเดอร์ คุณต้องรีสตาร์ท Arduino IDE โดยสมบูรณ์ ดังนั้นให้ปิดภาพสเก็ตช์ทั้งหมดของคุณ (โปรดบันทึกก่อนที่จะทำเช่นนั้น) จากนั้นเปิดไฟล์ GBCartRead_v1_6_Rev1.ino อัปโหลดไปยัง Arduino เพื่อให้เราสามารถเริ่มการทดสอบได้ *** ก่อนวางรถเข็นเกม คุณต้องถอดปลั๊กอุปกรณ์! ไม่เช่นนั้นคุณจะเสี่ยงต่อการลบ RAM บนรถเข็นเกมและสูญเสียความคืบหน้าในเกม! ***

ขั้นตอนที่ 15: ทดสอบอุปกรณ์

การทดสอบอุปกรณ์
การทดสอบอุปกรณ์

เมื่อเสียบปลั๊ก Arduino ของคุณพร้อมที่จะส่งข้อมูลบางส่วน แต่สิ่งนี้จะไม่เกิดขึ้นตราบใดที่สคริปต์ Python ไม่ทำงาน ดังนั้นโปรดดาวน์โหลดไฟล์แนบและวางไว้ที่ใดที่หนึ่งบนคอมพิวเตอร์ของคุณ

Pythonหากคุณไม่ได้ติดตั้ง Python บนคอมพิวเตอร์ของคุณ โปรดดาวน์โหลดที่นี่ คุณต้องใช้ Pyserial ด้วย

ทดสอบ

คลิกขวาที่ไฟล์ GBControllerReader.py และเลือก "แก้ไขด้วย IDE" คุณควรเห็นบางอย่างในรูปภาพ ถอดปลั๊กอุปกรณ์ ใส่รถเข็น Game Boy และเชื่อมต่ออุปกรณ์อีกครั้ง หากคุณยังไม่ได้ดำเนินการ จากนั้น สามารถกด F5 เพื่อเรียกใช้โค้ดและสคริปต์ Python จะเริ่มอ่านส่วนหัวของเกม Game Boy หลังจากนั้นคุณสามารถเลือกที่จะดัมพ์เกม

ขั้นตอนที่ 16: *** โบนัส *** การควบคุมเกม

หลังจากที่คุณทิ้งเกมแล้ว เกมจะเริ่มโดยอัตโนมัติในโปรแกรมจำลอง ตอนนี้คุณสามารถเริ่มร่างการประมวลผลที่แนบมา

ปัญหาฉันมีปัญหากับส่วนนี้ แต่อาจจะเหมาะกับคุณดังที่ฉันได้กล่าวไว้ในบทนำของคำแนะนำนี้ หากใครรู้วิธีแก้ปัญหานี้ โปรดตอบกลับในความคิดเห็นเพื่อที่ฉันจะได้เรียนรู้จากสิ่งนี้ (และอื่น ๆ ด้วย) แล้วเราจะได้สัมผัสประสบการณ์ใหม่ในการเล่นเกมที่เรารัก

ขั้นตอนที่ 17: Outro

Outro
Outro

ขอบคุณที่อ่านคำแนะนำนี้ ฉันหวังว่าคุณจะสนุกกับมันและสนุกกับการทำมัน ฉันอยากจะขอบคุณ Oceanz อีกครั้งที่ช่วยฉันในเรื่องนี้ พวกมันยอดเยี่ยมมากกับการพิมพ์ 3 มิติ พวกเขาให้บริการที่ดีเยี่ยมด้วยคุณภาพที่ดีเยี่ยมและแม้กระทั่งราคาที่ดีที่สุด หากไม่มีพวกเขาสิ่งนี้จะไม่ทำงาน

เคล็ดลับ?

หากคุณเห็นข้อผิดพลาดในคำแนะนำนี้ หรือมีคำแนะนำใด ๆ ที่จะทำให้ดียิ่งขึ้น โปรดพูดอย่างนั้น จากนั้นเราทุกคนสามารถสนุกไปกับมันได้มากขึ้น แน่นอน ฉันต้องการดูว่าเวอร์ชันของคุณเป็นอย่างไร ดังนั้นโปรดโพสต์รูปภาพบางส่วนในความคิดเห็น ฉันรอคอยปฏิกิริยาทั้งหมดของคุณ ขอให้สนุกกับการเล่น!

แนะนำ: