กลับไปหน้ารวมไฟล์
arduino-arcade-lego-games-box.md

Modular Entertianment: LEGO Arcade Game Box

กล่องที่พิมพ์ด้วย 3D ต้องใช้เครื่องพิมพ์ราคาแพง กล่องไม้ต้องใช้เครื่องมือไฟฟ้า Arduino Arcade LEGO Box ใช้ประโยชน์จากฮาร์ดแวร์โมดูลาร์ขั้นสุดยอด: ตัวต่อพลาสติก ABS โดยเป็นโครงสร้างที่สร้างสรรค์และยอดเยี่ยมสำหรับบรรจุเกม C++ ขนาดเล็กที่สร้างขึ้นเองจำนวนมาก ซึ่งใช้หน้าจอ TFT สีที่สว่างสดใสและ Analog Joystick

stock_counter_lcd_setup_1772706693516.png

วิศวกรรมจอสี SPI

ในการสร้าง Arcade ที่แท้จริง จอแสดงผลข้อความ 16x2 จากโปรเจกต์เก่า ๆ นั้นไร้ประโยชน์ คุณต้องอัปเกรดไปใช้การเขียนโปรแกรมแบบกราฟิก

  1. 1.8" ST7735 TFT Color Display ถูกนำมาใช้งานอย่างมากเนื่องจากมีอินเทอร์เฟซ SPI bus ที่รวดเร็วอย่างไม่น่าเชื่อ (ต้องใช้ 5 พินเฉพาะ: MOSI, SCK, CS, RESET, RS)
  2. ด้วยไลบรารี <Adafruit_GFX.h> และ <Adafruit_ST7735.h> ทำให้ Arduino สามารถใช้ฟังก์ชันการวาดแบบ Vector ได้
  3. คุณรัน tft.fillScreen(ST7735_BLACK); เพื่อล้างหน้าจอ
  4. คุณวาดลูกบอลในเกม Pong: tft.fillCircle(ball_X, ball_Y, 2, ST7735_RED);
  5. การคำนวณทางคณิตศาสตร์ที่จำเป็นสำหรับการสะท้อนจากไม้ตีเกี่ยวข้องกับเรขาคณิตแบบ Vector มาตรฐาน (ballDir_X = -ballDir_X; เมื่อเกิดการชน)

การรวม Analog Joystick

แตกต่างจากปุ่ม Arcade แบบ Digital, Analog Thumbstick ทำงานเหมือนกับคอนโทรลเลอร์ PlayStation ของคุณทุกประการ

  • ประกอบด้วย 10K Potentiometer สองตัว (หนึ่งสำหรับแกน X, หนึ่งสำหรับแกน Y)
  • Arduino อ่านค่า analogRead(A0) โดยจะคืนค่า 512 ได้อย่างสมบูรณ์เมื่ออยู่ตรงกลาง
  • ดันขึ้น จะได้ค่า 1023 ดึงลง จะได้ค่า 0
  • โค้ดจะแมปตัวเลข Analog เหล่านี้โดยตรงกับตัวแปรทางคณิตศาสตร์ที่วาดเรือหรือไม้ตีของผู้เล่นบนหน้าจอสีขนาดเล็ก!

การสร้างฮาร์ดแวร์ตัวต่อ

  • Arduino Nano (Uno ใหญ่เกินไปที่จะใส่ในโครงสร้าง LEGO ที่สวยงามได้ง่าย)
  • 1.8" TFT SPI Color Display Module
  • Standard Analog Thumb Joystick Breakout
  • Piezo Buzzer สำหรับเสียงเอฟเฟกต์ 8-bit ที่หนักแน่น
  • ตัวต่อ LEGO และ Technic beam จำนวนมาก (คุณมักจะต้องเจาะรูเล็กๆ สองรูอย่างระมัดระวังผ่านฐานเพื่อร้อยสายไฟ Joystick!)

ข้อมูล Frontmatter ดั้งเดิม

title: "Arduino Arcade LEGO Games Box"
description: "Bricking good times! Merge childhood aesthetics with embedded C++ by building a colorful, multi-game arcade cabinet housed entirely within a custom interlocking LEGO enclosure."
category: "Games & Toys"
difficulty: "Intermediate"