กลับไปหน้ารวมไฟล์
ping-pong-led-400741.md

สถาปัตยกรรม Game Loop แบบฉบับเซียน

เซ็ตอัพตัวนี้คือการจำลองเกมปิงปองแบบ Digital สุดจ๊าบ โดยใช้แถวไฟ LED วิ่งเป็นเส้นตรง (Photon Matrix) หลักๆ คือตัว Code จะรัน Algorithm ให้ไฟวิ่งสลับ Pin I/O รัวๆ เพื่อจำลองความเร็วของลูกปิงปองให้ดูสมจริง

พอไฟวิ่งเข้าโซนทำแต้ม (ไอ้ตรงไฟ LED สีน้ำเงินท้ายแถวนั่นแหละ) น้องต้องกดปุ่มโต้กลับให้ทัน ซึ่งตัว Microcontroller จะคอยดักจับ Routine ของ Hardware เพื่อเช็ค Timing ในการกด ถ้าดันไปกดนอก "Green Zones" (ไฟสีเขียว-แดงข้างๆ) ตัว Logic จะถือว่าน้องพลาด และบันทึกค่าลง Variable สถานะความผิดพลาดทันที ในหนึ่งเกมพี่เซ็ตไว้ให้แค่ 3 ชีวิตนะวัยรุ่น ถ้าพลาดจนครบ ตัวนับ Fault-counter จะทำงาน แล้วยิงข้อมูล Telemetry ขึ้นจอ LCD ผ่านระบบ I2C พร้อมส่งเสียงด่า เอ๊ย เสียงเตือนผ่าน Piezo buzzer ให้แสบหูเล่นๆ

การประกอบร่างและวางวงจร (Assembly Forensics)

  1. จุดรับ Input หลัก: ต่อปุ่ม Switch 1 ขนานกับสาย 5V และ GND แล้วยิงสัญญาณเข้า Digital Pin 3 อย่าลืมใส่ Pull-down Resistor ไว้ด้วยนะเว้ย เพื่อดึงให้สถานะ Logic นิ่งอยู่ที่ 0 ตลอดเวลาถ้าไม่ได้กด ห้ามลืมเด็ดขาดไม่งั้นค่ารวน
  2. แผงไฟวิ่ง (Photon Sequence Matrix): เสียบ LED เรียงกันไปเลยตั้งแต่ Digital Pin 13 ไล่ลงมาจนถึง Pin 4 วางเรียงจากซ้ายไปขวาให้ดูหล่อเท่ตามพิกัดที่วางไว้
  3. จุดรับ Input ฝั่งตรงข้าม: ต่อปุ่มที่สองด้วยโครงสร้างแบบเดียวกันเป๊ะ แต่คราวนี้ยิงเข้า Pin 2 นะน้อง
  4. ชุดส่งสัญญาณเสียง: เอา Piezo buzzer ไปจิ้มที่ Pin 1 เพื่อสร้างเสียงเตือนแบบ PWM (คำเตือน: Pin 1 มันแชร์กับขา UART TX บนบอร์ด Uno นะ เวลาจะอัปโหลด Code หรือใช้งาน Serial ระวังเอ๋อด้วยล่ะ)
  5. จอรายงานผล: เชื่อมจอ LCD ผ่านขา 5V, GND และสาย SDA/SCL ตามมาตรฐาน I2C เป๊ะๆ ตามสเปก Protocol

เช็คสายไฟให้ดี อย่าให้ช็อตนะไอ้น้อง โดยเฉพาะจังหวะกดปุ่มสองปุ่มพร้อมกัน ตัว CPU จะวน Loop ตรวจสอบไวมากระดับ Millisecond เพื่อให้ทันปฏิกิริยาตอบสนองของน้อง เพราะฉะนั้นต้องเช็คเรื่องการกวาดข้อมูล (Polling) ให้แม่น อย่าให้มีสัญญาณกวน (Bounce) มาทำให้เสียเรื่อง จัดไปวัยรุ่น!

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

title: "Ping Pong LED"
description: "A reactionary state-machine entertainment platform leveraging discrete tactile interrupts to navigate rapid algorithmic sequence shifts across a unified LED matrix."
author: "newproject"
category: ""
tags:
  - "lights"
  - "toys"
  - "kids"
views: 0
likes: 5244
price: 1499
difficulty: "Expert"
components:
  - "4"
tools:
  - "10x LED (generic)"
  - "10x Resistor 221 ohm"
  - "1x Jumper wires (generic)"
  - "2x Resistor 10k ohm"
  - "1x Buzzer"
  - "1x Arduino UNO"
  - "1x Solderless Breadboard Full Size"
  - "1x I2C 16x2 Arduino LCD Display Module"
  - "2x Pushbutton switch 12mm"
apps:
  []
downloadableFiles:
  []
documentationLinks:
  []
passwordHash: "727c2ae6a556fc646b02f1d98e1886cde3565448b6439d007beeb7f611b1e9a8"
encryptedPayload: "U2FsdGVkX19+cBu53xnL6nIeqV5hi+CD220cW7qPC/fDAF0pKUxHzDL/j7/pAmOQ2iINFPoZepPCBSue3n+dvy+Dbu5Fn/AACPE2GvcG2MI="
seoDescription: "Engineer an algorithmic Ping Pong LED array driven by reactive state-machine logic loops and Boolean hardware interrupts for dynamic game loops."
videoLinks: []
heroImage: "https://cdn.jsdelivr.net/gh/bigboxthailand/arduino-assets@main/images/projects/ping-pong-led-400741_cover.jpg"
lang: "th"