สารบัญ:
วีดีโอ: เกม Arduino Battleship: 3 ขั้นตอน
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:05
ฉันจำได้ว่าเคยเล่นเกมเรือประจัญบานเวอร์ชั่นกระดาษและดินสอตอนเด็กๆ อันที่จริง มันมีมาตั้งแต่สงครามโลกครั้งที่ 1 ฉันยังมีตัวแปร "อิเล็กทรอนิกส์" ในช่วงต้นทศวรรษ 1960 ที่เรียกว่า "Sonar Sub Hunt" ที่มีแสงและเสียงและทุ่นระเบิดที่ซ่อนอยู่ ตามมาตรฐานวิดีโอเกมในปัจจุบัน Battleship ค่อนข้างน่าเบื่อ แต่ฉันคิดว่าฉันจะสร้างมันขึ้นมาเพื่อดูว่าหลานๆ คิดอย่างไรเกี่ยวกับเรื่องนี้ ท้ายที่สุดแล้วบางครั้งย้อนยุคก็เท่ได้
มีชิ้นส่วนของโปรเจ็กต์นี้ที่จะเป็นประโยชน์ในที่อื่นๆ แม้ว่าคุณจะไม่สนใจที่จะสร้างเกม Battleship ก็ตาม มีอินเทอร์เฟซ LCD แบบ 4 บิต 1602 แบบเรียบง่ายที่มีรูทีนสำหรับการตั้งค่าตำแหน่งอักขระเฉพาะ นอกจากนี้ยังมีอินเทอร์เฟซสำหรับการถอดรหัสเมทริกซ์สวิตช์ 4x4 อินเทอร์เฟซทั้งสองนี้มีให้ใช้งานแยกกัน รวมถึงไฟล์ต่างๆ เพื่อให้สามารถเคลื่อนย้ายได้ง่าย เกมดังกล่าวยังมีรูทีนเอฟเฟกต์เสียงต่างๆ และวงจรแอมพลิฟายเออร์ออดิโอทรานซิสเตอร์หนึ่งตัวอย่างง่าย
ขั้นตอนที่ 1: ฮาร์ดแวร์
แผนผังที่นำเสนอนี้มีไว้สำหรับผู้เล่นคนเดียว ดังนั้นจึงต้องสร้างสองหน่วย หน่วยสื่อสารโดยใช้อินเทอร์เฟซ 3 สายซึ่งรวมถึงสาย UART TX และ RX และสายดิน ฉันเลือกใช้แจ็คหูฟังสเตอริโอขนาด 1/8 นิ้วมาตรฐานและสายเคเบิลมาตรฐานพร้อมปลั๊กตัวผู้ที่ปลายทั้งสองข้าง RX จากกล่องหนึ่งไปยัง TX ของอีกกล่องหนึ่งและในทางกลับกัน คุณสามารถทำได้โดยสลับสายไฟที่บัดกรีกับแจ็คหูฟังในกล่องหรือสลับบนแผงวงจรเมื่อคุณสร้าง
เกมคลาสสิกถูกจัดวางเป็นเมทริกซ์ แต่ฉันตัดสินใจที่จะใช้งานอย่างง่ายโดยใช้ LCD 1602 สำหรับจอแสดงผล บรรทัดแรกแสดงตำแหน่งเรือรบของผู้เล่นและการยิงของฝ่ายตรงข้าม บรรทัดที่สองแสดงการยิงของผู้เล่นและการยิงใดๆ บนเรือรบของฝ่ายตรงข้าม ที่ให้ 16 ตำแหน่งที่เป็นไปได้สำหรับเรือรบ จำนวนเรือรบถูกกำหนดในซอฟต์แวร์ และฉันเลือก 5 ลำโดยพลการ
ตำแหน่งของเรือรบทั้ง 16 ลำนั้นเข้ากันได้ดีกับข้อกำหนดของสวิตช์เพราะอนุญาตให้ใช้เมทริกซ์ขนาด 4x4 มีแผ่นสวิตช์เมทริกซ์ขนาด 4x4 ให้เลือก แต่ฉันเลือกใช้สวิตช์แต่ละตัวในบรรทัดเดียวเพื่อให้ตรงกับจอแสดงผลเชิงเส้น อย่างไรก็ตามฉันได้ต่อสวิตช์เป็นเมทริกซ์ 4x4 เพื่อให้จำเป็นต้องใช้หมุด Arduino เพียงแปดตัว อ้างถึงไดอะแกรมการเดินสายสวิตช์และแผนผังสำหรับการเชื่อมต่อที่เหมาะสม
จอ LCD เป็นแบบต่อสายสำหรับอินเทอร์เฟซ 4 บิต ฉันยังเพิ่มไฟ LED ภายนอกที่พิน D13 เพื่อระบุว่าผู้เล่นคนใดควรถ่ายภาพ ในขั้นต้น ผู้เล่นจะตัดสินใจว่าใครเป็นคนยิงลูกแรก จากนั้นซอฟต์แวร์จะควบคุมการกลับมาของเกมโดยอัตโนมัติ
ฉันต้องการเพิ่มเอฟเฟกต์เสียงที่เรียบง่ายสำหรับช็อต การระเบิด เกมพร้อม และผู้ชนะ/ผู้แพ้ ฉันลองใช้ออดแบบเพียโซธรรมดาๆ แต่ลงเอยด้วยลำโพงขนาดเล็กแทน กระแสที่ลำโพงต้องการนั้นเกินที่ Arduino สามารถรองรับได้ ดังนั้นจึงเพิ่มแอมพลิฟายเออร์ทรานซิสเตอร์อย่างง่าย เสียงยังไม่ดีนัก แต่ก็ดีกว่าเสียงกริ่ง ลำโพงของฉันคือ 4 โอห์ม แต่ถ้าคุณมี 8 โอห์มให้เปลี่ยนตัวต้านทานในแผนผังจาก 39 โอห์มเป็น 33 โอห์ม หากคุณใช้ Piezo Buzzer คุณควรจะสามารถขับมันได้โดยตรงจากขา Arduino โดยให้อีกด้านของ Buzzer เชื่อมต่อกับกราวด์
รวมสวิตช์รีเซ็ตภายนอกและเชื่อมต่อโดยตรงระหว่างกราวด์และพิน "รีเซ็ต" บน Arduino ที่ให้วิธีการในการเริ่มเกมใหม่
ขั้นตอนที่ 2: ซอฟต์แวร์
ซอฟต์แวร์มีไฟล์รวมสำหรับอินเทอร์เฟซ LCD ของฉัน และฉันยังสร้างไฟล์รวมสำหรับการสแกนเมทริกซ์สวิตช์ 4x4 การเริ่มต้นจะแจ้งให้ผู้เล่นเลือกตำแหน่งสำหรับเรือรบของเขา จากนั้นไปที่สถานะ "พร้อม" เมื่อผู้เล่นทั้งสองพร้อม หนึ่งในนั้นเริ่มเกมโดยกดสวิตช์
ตำแหน่งการยิงจะถูกส่งผ่าน UART ไปยังผู้เล่นอื่น และผลลัพธ์ที่เหมาะสมจะถูกส่งกลับไปยังผู้เล่นที่ยิงกระสุน ดังที่ได้กล่าวไว้ก่อนหน้านี้ เมื่อถ่ายภาพแรกแล้ว ซอฟต์แวร์จะควบคุมว่าใครเป็นคนยิงต่อไป ก่อนส่งช็อตจะถูกตรวจสอบกับตำแหน่งของช็อตก่อนหน้า หากมีการใช้ตำแหน่งนั้นแล้ว ช็อตจะไม่ถูกส่งต่อไป ไฟ LED “My_Shot” เป็นตัวกำหนดว่าใครจะเลี้ยว นอกจากนี้ยังมีเสียงการยิงที่สร้างขึ้นสำหรับการเลือกที่ถูกต้องและเสียงระเบิดหากเรือรบถูกโจมตี เอฟเฟกต์เสียงได้มาจากตัวอย่างที่พบทางออนไลน์พร้อมการดัดแปลงเพื่อให้เหมาะกับเกม
เมื่อเรือรบของฝ่ายตรงข้ามถูกโจมตีทั้งหมด ข้อความจะแสดงขึ้นบนจอ LCD แต่ละลำ โดยหนึ่งรายการคือผู้ชนะ และอีกรายการหนึ่งคือผู้แพ้ ข้อความยังระบุว่าสามารถเริ่มเกมใหม่ได้โดยการกดปุ่มรีเซ็ต นอกจากนี้ยังมีเอฟเฟกต์เสียงแยกสำหรับผู้ชนะและผู้แพ้
ขั้นตอนที่ 3: ภาพหน้าจอ
นี่คือภาพหน้าจอบางส่วนจากเกม แค่นี้แหละสำหรับโพสต์นี้ ตรวจสอบคำแนะนำอื่น ๆ ของฉันและเว็บไซต์ของฉันได้ที่: www.boomerrules.wordpress.com
แนะนำ:
เกม 3d Maze โดยใช้ Arduino: 8 ขั้นตอน (พร้อมรูปภาพ)
เกม 3d Maze ที่ใช้ Arduino: สวัสดีเพื่อนๆ ดังนั้นวันนี้เราจะมาสร้างเกมเขาวงกตโดยใช้ ARDUINO UNO เนื่องจาก Arduino Uno เป็นบอร์ดที่ใช้กันเป็นส่วนใหญ่ มันจึงเจ๋งมากที่จะสร้างเกมด้วย ในคำแนะนำนี้ ให้สร้างเกมเขาวงกตที่ควบคุมโดยใช้จอยสติ๊ก อย่าลืม
เกม Arduino Sorta Sudoku: 3 ขั้นตอน (พร้อมรูปภาพ)
เกม Arduino Sorta Sudoku: ผู้คนจำนวนมากชอบเล่น Sudoku และหลานๆ ชอบเดาเกม ดังนั้นฉันจึงตัดสินใจสร้างเกม "Sorta Sudoku" แบบพกพา ในเวอร์ชันของฉัน เกมเป็นตารางขนาด 4x4 แต่มีให้เพียงหมายเลขเดียวเท่านั้น แนวความคิดคือการเดาตัวเลขที่เหลือใน
กดปุ่ม); // เกม Arduino LCD: 5 ขั้นตอน (พร้อมรูปภาพ)
กดปุ่ม); //เกม Arduino LCD: เมื่อเร็ว ๆ นี้ใน Scouts ฉันทำงานเกี่ยวกับตราสัญลักษณ์การออกแบบเกม สำหรับข้อกำหนดข้อใดข้อหนึ่ง ฉันสร้างเกมนี้โดยใช้ Arduino ที่อิงจากเกม LED Rocker จุดประสงค์ของเกมคือทำคะแนนให้ได้มากที่สุด ในช่วงเริ่มต้นของเ
เกม Arduino จอแสดงผล LED แบบอินไลน์: 7 ขั้นตอน (พร้อมรูปภาพ)
เกม Arduino จอแสดงผล LED แบบอินไลน์: หรือที่รู้จักว่าระบบเกมแสดงบันได LED Attiny-85 ที่ติดตั้งฮาร์ดแวร์และซอฟต์แวร์เพื่อเล่นแอ็กชัน "วิดีโอ" เกมบนจอแสดงผล LED แบบอินไลน์ มีจอแสดงผลแลดเดอร์ LED 12 ดวงแบบมัลติเพล็กซ์ และรองรับอินพุตปุ่มสูงสุด 6 ปุ่มและออปติ
Space Battleship Yamato 2199 พร้อมไมโครคอนโทรลเลอร์ Trinket: 8 ขั้นตอน (พร้อมรูปภาพ)
Space Battleship Yamato 2199 พร้อม Trinket Microcontrollers: เนื่องจากการรีเมคของแอนิเมชั่นและภาพยนตร์ของ Space Battleship Yamato นอกเหนือจากการออกแบบที่น่าสนใจของโมเดล Bandai มันทำให้ฉันสนใจที่จะสร้างโมเดลเรือรบอวกาศนี้อีกครั้ง Bandai ไม่ได้พูดถึงขนาดของมัน อาจจะ ~1:2500 โดยประมาณการ