
สารบัญ:
2025 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2025-01-23 15:12

ยินดีต้อนรับสู่คำสั่งแรกของฉัน
โครงการที่ฉันต้องการแบ่งปันกับคุณในวันนี้คือเกม Arduino maze ซึ่งกลายเป็นพ็อกเก็ตคอนโซลที่มีความสามารถเท่ากับ Arduboy และคอนโซลที่ใช้ Arduino ที่คล้ายกัน มันสามารถแฟลชกับเกมในอนาคตของฉัน (หรือของคุณ) ด้วยส่วนหัว ICSP ที่เปิดเผย
ฉันมีความคิดเมื่อไม่กี่เดือนก่อนเพื่อสร้างเกมเขาวงกตบน Arduino แต่ไม่มีเขาวงกตที่ฮาร์ดโค้ด มันควรจะสามารถสร้างเขาวงกตใหม่สำหรับแต่ละระดับที่คุณกำลังเล่น ดังนั้นคุณจะไม่เห็นเขาวงกตเดิมอีกเลย:)
การเข้ารหัสค่อนข้างยาก เนื่องจาก Arduino มีหน่วยความจำ RAM ที่จำกัด และฉันพบตัวอย่างสองสามตัวอย่างว่าสิ่งนี้สามารถทำได้ด้วยอัลกอริทึม Bo-Taoshi แบบง่าย
รหัสที่ฉันใช้เป็นจุดเริ่มต้นโดย SANUKI UDON และโครงการของเขา HOW TO MAKE A MAZE GENERATOR โดยใช้ ATTINY13A
ขั้นตอนที่ 1: การสร้างต้นแบบเขียงหั่นขนม


จุดเริ่มต้นของฉันคือกระดานทดลองเล็กๆ ที่เชื่อมต่อเพียง 4 ปุ่มเพื่อเคลื่อนที่ผ่านเขาวงกต แต่ต่อมาเมื่อฉันตัดสินใจว่าควรเป็นเกมคอนโซล ฉันจึงเพิ่มปุ่มอีกสองสามปุ่ม บนเขียงหั่นขนมขนาดใหญ่คุณจะเห็นปุ่มอีก 2 ปุ่มและต่อมาฉันเพิ่มปุ่มที่สามเพื่อใช้เป็นปุ่มเริ่ม / หยุดชั่วคราว / เมนู
ขั้นตอนที่ 2: ชิ้นส่วนที่จำเป็น
- Arduino pro mini / Arduino Uno / Atmega328P ชิป
- ซ็อกเก็ต DIP 28 พิน (อุปกรณ์เสริม)
- SSD1306 จอแสดงผล OLED
- ลำโพง Piezo
- ปุ่มกด - 7 ชิ้น
- ที่ใส่แบตเตอรี่แบบเหรียญ
- สวิตช์สลับ
- สายไฟ
- ต้นแบบ pcb (60x40mm)
ขั้นตอนที่ 3: การเดินสาย Breadboard / Schematic



การเชื่อมต่อส่วนประกอบดังแสดงในแผนภาพด้านบน
ปุ่ม:
- ปุ่มขึ้น: ขา Arduino 7
- ปุ่มลง: ขา Arduino 6
- ปุ่มซ้าย: ขา Arduino 9
- ปุ่มขวา: ขา Arduino 8
- ปุ่ม: ขา Arduino 5
- ปุ่ม B: ขา Arduino 4
- ปุ่ม START: ขา Arduino 2
หน้าจอ OLED SSD1306:
- SCL: ขา Arduino A5
- SDA: ขา Arduino A4
- VCC: Arduino VCC
- GND: Arduino GND
ออด:
- Buzzer บวก: ขา Arduino 3
- กราวด์ Buzzer: Arduino GND
ขั้นตอนที่ 4: รหัสที่มา
ซอร์สโค้ดเกม A-Maze สามารถพบได้ที่นี่:
เปิดใน Arduino IDE แล้วอัปโหลดไปยังบอร์ดของคุณหรือใช้โปรแกรมเมอร์ ISP เพื่อตั้งโปรแกรมชิปของคุณ
ฉันแนะนำให้ใช้ USBTIny ISP ไม่เคยมีปัญหากับมัน:) แต่คุณสามารถใช้ Arduino ธรรมดาเพื่อตั้งโปรแกรมชิปของคุณได้
ในกรณีของฉัน ฉันไม่ได้ใช้คริสตัลภายนอก ดังนั้นชิป Atmega328p ของฉันจึงทำงานบนออสซิลเลเตอร์ภายในซึ่งเป็น 8MhZ
สำหรับข้อมูลเพิ่มเติม โปรดไปที่ลิงก์นี้:
ขั้นตอนที่ 5: ดูมันในการดำเนินการ


ขั้นตอนที่ 6: กรณีและการย่อขนาด


หากคุณต้องการให้โปรเจ็กต์นี้ถาวร ด้วยเคสที่ดูดี นี่คือเคสสำหรับพิมพ์ 3 มิติง่ายๆ ที่ฉันออกแบบ:
ในภาพด้านบน คุณจะเห็นว่าส่วนประกอบทั้งหมดถูกจัดวางบน PCB ต้นแบบ 4x6 อย่างไร
การเดินสายปุ่มส่วนใหญ่จะอยู่ใต้ที่ใส่แบตเตอรี่ พยายามทำให้เรียบที่สุดเท่าที่จะเป็นไปได้ เพื่อให้ที่ยึดแบตเตอรี่สามารถวางให้พอดีเหนือบอร์ดด้วยสายไฟที่อยู่ระหว่างนั้น
ฉันยังแนะนำให้เดินสายไฟอื่นๆ ใต้หน้าจอ เนื่องจากขาชิป Atmega นั้นบัดกรีและเปิดออกใต้หน้าจอ เมื่อคุณบัดกรีเสร็จแล้ว ให้ติดเทปฉนวนไว้ใต้หน้าจอเพื่อป้องกันไม่ให้ขาหนีบ ฯลฯ
ส่วนหัว ICSP เป็นอุปกรณ์เสริม และหากคุณตัดสินใจที่จะไม่เปิดเผย จะทำให้การประกอบของคุณง่ายขึ้นมาก ไม่ต้องดูแลการเชื่อมต่อ 6 จุด แต่ตั้งโปรแกรมชิปก่อนจะบัดกรี หรือใช้ซ็อกเก็ต DIP 28 พิน เพื่อให้คุณทำได้อย่างง่ายดาย ถอดชิปสำหรับการเขียนโปรแกรม


รองชนะเลิศในการประกวดขนาดพกพา
แนะนำ:
DIY 37 Leds เกมรูเล็ต Arduino: 3 ขั้นตอน (พร้อมรูปภาพ)

DIY 37 Leds เกมรูเล็ต Arduino: รูเล็ตเป็นเกมคาสิโนที่ตั้งชื่อตามคำภาษาฝรั่งเศสหมายถึงวงล้อเล็ก
หมวกนิรภัย Covid ส่วนที่ 1: บทนำสู่ Tinkercad Circuits!: 20 ขั้นตอน (พร้อมรูปภาพ)

Covid Safety Helmet ตอนที่ 1: บทนำสู่ Tinkercad Circuits!: สวัสดีเพื่อน ๆ ในชุดสองตอนนี้ เราจะเรียนรู้วิธีใช้วงจรของ Tinkercad - เครื่องมือที่สนุก ทรงพลัง และให้ความรู้สำหรับการเรียนรู้เกี่ยวกับวิธีการทำงานของวงจร! หนึ่งในวิธีที่ดีที่สุดในการเรียนรู้คือการทำ ดังนั้น อันดับแรก เราจะออกแบบโครงการของเราเอง: th
BOSEBerry Pi Internet Radio: 4 ขั้นตอน (พร้อมรูปภาพ)

BOSEBerry Pi Internet Radio: ฉันชอบฟังวิทยุ! ฉันใช้วิทยุ DAB ในบ้าน แต่พบว่าการรับสัญญาณค่อนข้างหยาบและเสียงขาดหาย ดังนั้นฉันจึงตัดสินใจสร้างวิทยุอินเทอร์เน็ตของตัวเอง ฉันมีสัญญาณ wifi แรงรอบบ้านและพี่ชายดิจิทัล
นาฬิกาบอกตำแหน่ง 'วีสลีย์' ด้วย 4 เข็มนาฬิกา: 11 ขั้นตอน (พร้อมรูปภาพ)

นาฬิกาบอกตำแหน่ง 'Weasley' แบบมี 4 เข็ม: ดังนั้น ด้วย Raspberry Pi ที่ใช้งานมาระยะหนึ่งแล้ว ฉันต้องการค้นหาโครงการดีๆ ที่จะช่วยให้ฉันใช้งานได้ดีที่สุด ฉันเจอนาฬิกาบอกตำแหน่งวีสลีย์ที่สอนได้ดีเยี่ยมนี้โดย ppeters0502 และคิดว่า
สถานีตรวจอากาศระดับมืออาชีพโดยใช้ ESP8266 และ ESP32 DIY: 9 ขั้นตอน (พร้อมรูปภาพ)

สถานีตรวจอากาศระดับมืออาชีพโดยใช้ ESP8266 และ ESP32 DIY: LineaMeteoStazione เป็นสถานีตรวจอากาศที่สมบูรณ์แบบซึ่งสามารถเชื่อมต่อกับเซ็นเซอร์ระดับมืออาชีพจาก Sensirion รวมถึงส่วนประกอบ Davis Instrument (Rain Gauge, เครื่องวัดความเร็วลม) โปรเจ็กต์นี้มีจุดมุ่งหมายเพื่อเป็นสถานีตรวจอากาศแบบ DIY แต่ต้องใช้