สารบัญ:
วีดีโอ: Octarine: เกมจับคู่สีด้วยไฟ LED WS2812 RGB: 6 ขั้นตอน
2025 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2025-01-13 06:58
ออกทารีน สีแห่งเวทมนตร์ มันมีชีวิตชีวาและเปล่งประกายและเป็นสีแห่งจินตนาการที่ไม่มีปัญหาเพราะทุกที่ที่ปรากฏมันเป็นสัญญาณว่าเพียงแค่สสารเท่านั้นที่เป็นผู้รับใช้ของพลังของจิตใจที่มีมนต์ขลัง มันเป็นเสน่ห์ของตัวเอง
แต่ Rincewind คิดเสมอว่ามันดูเป็นสีเขียวอมม่วง
- Terry Pratchett - สีสันแห่งเวทมนตร์
ทุกสีมีเสน่ห์และคุณต้องปลดปล่อยมันทีละสี คาถาเวทย์มนตร์สามคำจะช่วยคุณในการค้นหาของคุณ
ป.ล. ในโครงการนี้ ฉันใช้ตัวดำเนินการไบนารีและมาสก์ไบนารีอย่างกว้างขวาง ดังนั้นนักการศึกษาด้านวิทยาการคอมพิวเตอร์จึงอาจนำไปใช้เพื่อวัตถุประสงค์ในการสอนตรรกะแบบบูลีนในรูปแบบเกมที่น่าขบขัน
เสบียง
1x Arduino Nano/Uno หรือบอร์ดอื่นๆ ที่เข้ากันได้ โปรเจ็กต์นี้ใช้หมุดดิจิทัล 5 พินและหน่วยความจำน้อยกว่า 6KB ดังนั้นบอร์ดที่ใช้ Attiny85 ก็ควรทำงานได้ดีเช่นกัน
ปุ่มสัมผัส 4x หากต้องการ คุณสามารถใช้ปุ่มเซ็นเซอร์แทนได้
1x WS2812 LED แถบหรือแถบพร้อมไฟ LED RGB 8 ดวงที่ควบคุมได้
1x เขียงหั่นขนมหรือบอร์ดต้นแบบ PCB ถ้าคุณต้องการ
สายจัมเปอร์เขียงหั่นขนม
ขั้นตอนที่ 1: กฎของเกม
อินเทอร์เฟซเกมมีไฟ LED RGB 8 ดวง เป้าหมายคือการทำให้พวกเขาทั้งหมดเปล่งประกายด้วยสีเดียวกัน เป็นสีแดงใน "โลก" ที่หนึ่ง สีส้มในอันดับที่สอง สีเหลืองในอันดับที่สาม ฯลฯ
มีปุ่มหลัก 3 ปุ่ม แต่ละคนเปลี่ยนสีของไฟ LED สี่ดวงตามมาสก์ไบนารี ตัวอย่างเช่น ปุ่มแรกมีมาสก์ 11110000 หมายความว่าจะเปลี่ยนสีของไฟ LED สี่ดวงแรก นอกจากนี้ยังมีปุ่ม "Shift" ที่สลับมาสก์ หากผู้เล่นกดปุ่ม Shift+First หน้ากากจะเป็น 000011111 และไฟ LED สุดท้ายสี่ดวงจะได้รับผลกระทบ สีสันกำลังเปลี่ยนไปตามวัฏจักร
ภาพที่แนบมาอธิบายหน้ากากทั้งหมด
ขั้นตอนที่ 2: การออกแบบระดับ
เกมประกอบด้วย "โลก" แปดระดับย่อยในแต่ละ โลกที่หนึ่งคือ "สีแดง" และไฟ LED ทั้งหมดที่นี่อาจอยู่ในสองสถานะเท่านั้น: ว่างเปล่าและสีแดง ในแต่ละระดับย่อยจะมีการใช้ขั้นตอนการสับเปลี่ยนมากขึ้น ดังนั้นความยากจะค่อยๆ เพิ่มขึ้น เมื่อคุณผ่านโลก (เช่น ระดับย่อยทั้งหมด) คุณจะช่วยชีวิตสีถัดไป ดังนั้นในโลกที่สอง ("สีส้ม") ไฟ LED ทั้งหมดมีสามสถานะ: ว่างเปล่า สีแดง และสีส้ม กล่าวคือ โลกหน้าแต่ละโลกมีความท้าทายมากกว่าครั้งก่อน
จะเกิดอะไรขึ้นในโลกที่ 8 (“Octarine”)… ก็… เวทมนตร์บริสุทธิ์
ขั้นตอนที่ 3: วงจร
ขึ้นอยู่กับบอร์ดที่คุณใช้ แต่ฉันขอแนะนำอย่างยิ่งให้ใช้แหล่งจ่ายไฟภายนอกสำหรับ LED
ฉันใช้หมุด 2, 3, 4 และ 5 สำหรับปุ่ม หากคุณใช้ไมโครคอนโทรลเลอร์หรือพินอื่น อย่าลืมแก้ไขในโค้ดโปรแกรม
ขั้นตอนที่ 4: รหัส
ที่นี่คุณอาจพบซอร์สโค้ดเวอร์ชันล่าสุด
ขั้นตอนที่ 5: การทดสอบ
ขั้นตอนที่ 6: แล้วอะไรต่อไป?
คุณอาจสังเกตเห็นว่าเกมนี้ไม่มีโลกที่ 8 (ออกทารีน) มันถูกสร้างขึ้นโดยเจตนา เวทย์มนตร์… ไม่ใช่สิ่งที่ควรทำซ้ำอย่างแน่นอน
ฉันแนะนำให้คุณสร้างโลกที่ 8 ของคุณเอง ตัวอย่างเช่น คุณอาจให้ผู้เล่นจัดเรียงอาร์เรย์สีรุ้งแทนขาวดำหรือใช้เซลล์ที่มีการเปลี่ยนสี มันขึ้นอยู่กับคุณ. ทำเวทย์มนตร์ของคุณเองในแบบของคุณเอง