สารบัญ:

คอนโซล Arduino Pong แบบใช้มือถือ: 6 ขั้นตอน (พร้อมรูปภาพ)
คอนโซล Arduino Pong แบบใช้มือถือ: 6 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: คอนโซล Arduino Pong แบบใช้มือถือ: 6 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: คอนโซล Arduino Pong แบบใช้มือถือ: 6 ขั้นตอน (พร้อมรูปภาพ)
วีดีโอ: 📲💡 Arduino+Blynk EP.2 การสมัครใช้งาน #Blynk Cloud แบบละเอียด ทีละขั้นตอนง่าย ๆ 2024, มิถุนายน
Anonim
คอนโซล Arduino Pong แบบใช้มือถือ
คอนโซล Arduino Pong แบบใช้มือถือ

เมื่อเร็วๆ นี้ DFRobot ได้ติดต่อฉัน โดยต้องการให้ฉันใช้บอร์ด Arduino Nano และ OLED แบบพิเศษ ตอนแรกฉันต้องการสร้างจักรยานยนต์อัจฉริยะ และฉันก็สร้างมันขึ้นมาทั้งหมด แต่น่าเสียดายที่นาโนอ่อนแอเกินกว่าจะวิ่งและเก็บภาพร่างขนาดใหญ่ที่จำเป็น ดังนั้นฉันจึงตัดสินใจทบทวนหนึ่งในโปรเจ็กต์ก่อนหน้านี้ของฉัน ซึ่งเป็นเมทริกซ์นีโอพิกเซลที่เล่นเกมโป่ง ฉันต้องการทำให้เป็นแบบพกพาแทน และ OLED 1.7 จะทำให้เป็นจอแสดงผลที่สมบูรณ์แบบ

รายการอะไหล่:

  • Arduino นาโน
  • OLED
  • วิทยากร

ขั้นตอนที่ 1: วิดีโอ

Image
Image

ขั้นตอนที่ 2: การออกแบบเกม

การออกแบบเกม
การออกแบบเกม

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

ขั้นตอนที่ 3: การออกแบบอุปกรณ์เล่นเกม

การออกแบบอุปกรณ์เกมมิ่ง
การออกแบบอุปกรณ์เกมมิ่ง
การออกแบบอุปกรณ์เกมมิ่ง
การออกแบบอุปกรณ์เกมมิ่ง
การออกแบบอุปกรณ์เกมมิ่ง
การออกแบบอุปกรณ์เกมมิ่ง
การออกแบบอุปกรณ์เกมมิ่ง
การออกแบบอุปกรณ์เกมมิ่ง

โปรแกรม CAD ที่ฉันชอบคือ Fusion 360 ดังนั้นฉันจึงตัดสินใจใช้โปรแกรมดังกล่าวเพื่อออกแบบอุปกรณ์เล่นเกมปิงปองของฉัน ฉันเริ่มต้นด้วยการออกแบบส่วนประกอบแต่ละส่วนที่ใช้: OLED, Arduino Nano และลำโพง วิธีนี้ทำให้ฉันสามารถเห็นได้อย่างชัดเจนว่าส่วนประกอบแต่ละส่วนควรพอดีกับที่ใดและอย่างไรภายในตัวเครื่อง จากนั้นฉันก็ใส่นาโนและ PCB ไว้ที่ส่วนหลังของเคส และ OLED อยู่ด้านบน ถัดมาคือคำถามว่าจะวางลำโพงและปุ่มไว้ที่ไหน ฉันตัดสินใจว่าลำโพง 3W สามารถอยู่ใต้หน้าจอได้ (เมื่อมองจากด้านบน) และนั่นก็จำเป็นต้องวาง "ตะแกรง" ไว้เหนือลำโพงด้วยเพื่อไม่ให้เสียงอู้อี้ สุดท้าย ฉันเพิ่มปุ่มสองปุ่มทางด้านซ้ายเพื่อเพิ่มการควบคุม

ขั้นตอนที่ 4: การสร้างอุปกรณ์

การสร้างอุปกรณ์
การสร้างอุปกรณ์
การสร้างอุปกรณ์
การสร้างอุปกรณ์
การสร้างอุปกรณ์
การสร้างอุปกรณ์

ฉันเริ่มต้นด้วยการพิมพ์ 3 มิติแต่ละส่วน ซึ่งประกอบด้วยครึ่งล่าง ครึ่งบน และ 2 ปุ่ม ต่อไปฉันบัดกรีเฮดเดอร์ตัวเมียที่ขนาด 4x6 ซม. และต่อเข้ากับนาโน ซึ่งไม่เพียงแต่ช่วยให้สามารถถอด OLED ออกได้อย่างง่ายดายเท่านั้น แต่ยังยกระดับให้เหนือ Arduino Nano อีกด้วย ตรวจสอบแผนผังสำหรับข้อมูลการเดินสาย จากนั้นฉันก็ต่อสายทั้งสองปุ่มพร้อมกับบอร์ดฝ่าวงล้อม micro USB แบบง่ายสำหรับการจ่ายไฟ ลำโพงถูกต่อเข้ากับตำแหน่งที่ถูกต้องด้วย การออกแบบ Fusion 360 ของฉันช่วยให้สกรูเครื่อง 3 มม. สามารถยึด OLED, ลำโพง และเชื่อมต่ออุปกรณ์ทั้งสองครึ่งได้ แต่ฉันต้องทำให้มันชัดเจน ดังนั้นฉันจึงใช้สว่านเจาะเพื่อเจาะรู 8 รู: 2 รูสำหรับลำโพง 2 สำหรับหน้าจอ และ 4 รูด้านล่าง คุณสามารถไปที่ลิงค์ Thingiverse สำหรับไฟล์

ขั้นตอนที่ 5: การเขียนโปรแกรมเกม

การใช้อินเทอร์เฟซที่เรียบง่ายมีความสำคัญต่อการทำให้โปรแกรมมีขนาดเล็ก ฉันเริ่มต้นด้วยการเพิ่มไลบรารีหลายตัว: Adafruit_GFX, Adafruit_SSD1351 และไลบรารี Arduino Timer ต่อไป ฉันกำหนดหมุดและสีของฉัน เช่น หมุดของ OLED และคำจำกัดความสี 16 บิต ในโค้ดของฉันยังมี 4 วิธีในการเปลี่ยนวิธีการเล่นเกม เช่น การเปลี่ยนขนาดแป้นและความเร็วของลูกบอล จากนั้นจะมีส่วนซึ่งกำหนดตัวแปรแต่ละตัว รวมถึงคะแนนและพิกัดต่างๆ เมื่อใดก็ตามที่อุปกรณ์ขับเคลื่อนด้วยรูปภาพของลูกบอลและมีข้อความปรากฏขึ้นบนหน้าจอ พร้อมกับเพลงประกอบเล็กๆ น้อยๆ ที่กำหนดไว้ก่อนหน้านี้ในโค้ด เมื่อเกมเริ่มต้นขึ้น ตัวจับเวลาสองตัวจะถูกสร้างขึ้น ตัวหนึ่งจะอัปเดตแป้น และอีกตัวอัปเดตลูกบอล ทุกครั้งที่ตำแหน่งของลูกบอลอัปเดตพิกัดของลูกบอลจะถูกตรวจสอบเพื่อให้แน่ใจว่าจะไม่ผ่านขอบหน้าจอหรือสัมผัสกับไม้พาย ทุกครั้งที่มันกระดอนแกน x หรือ y ของมันจะถูกกลับด้านและจะมีเสียงเล็กๆ ดังขึ้น ดูวิดีโอที่จุดเริ่มต้นของบทความนี้เพื่อดูว่าเกมเล่นอย่างไร

ขั้นตอนที่ 6: เล่นปิงปอง

เล่นปิงปอง!
เล่นปิงปอง!
เล่นปิงปอง!
เล่นปิงปอง!
เล่นปิงปอง!
เล่นปิงปอง!
เล่นปิงปอง!
เล่นปิงปอง!

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

แนะนำ: