สารบัญ:
- เสบียง
- ขั้นตอนที่ 1: โค้ดและการวางแผน
- ขั้นตอนที่ 2: ปุ่มกด
- ขั้นตอนที่ 3: หน้าจอ LCD
- ขั้นตอนที่ 4: ผลิตภัณฑ์ใช้งานขั้นสุดท้าย (หยาบ)
- ขั้นตอนที่ 5: เสียงระฆังและนกหวีดทั้งหมด
วีดีโอ: Lazy 301 Dart Buddy!: 5 ขั้นตอน
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:05
เพื่อนร่วมห้องในวิทยาลัยของฉันและฉันเพิ่งได้รับมรดกกระดานปาเป้าที่พ่ายแพ้…
เราเริ่มสำรวจเกมเช่น 301 ซึ่งผู้เล่นแต่ละคนเริ่มต้นที่ 301 แต้มและลดลงจนเหลือศูนย์ในช่วงสองสามรอบ เรื่องนี้สนุกดี อย่างไรก็ตาม การเขียนบนกระดานไวท์บอร์ด (เล็ก) ที่ให้ไว้ข้างๆ กระดานนั้นใช้เวลานาน และทำให้ผู้เล่นคนต่อไปไม่สามารถยิงได้จนกว่าผู้เล่นคนก่อนจะออกไปให้พ้นทาง
ดังนั้น ฉันคิดว่าน่าจะเป็นโครงการยามบ่ายที่สนุกที่จะนำเครื่องคิดเลขแบบ Arduino มารวมกัน ซึ่งสามารถช่วยเราได้
ในอีกหนึ่งชั่วโมงข้างหน้า ฉันมีต้นแบบการทำงานคร่าวๆ บนเขียงหั่นขนม อย่างไรก็ตาม ด้วยการทำงานอีกสองสามชั่วโมง ฉันถอดเขียงหั่นขนมและยึดทุกอย่างเข้ากับกล่องราคาถูกที่ฉันแขวนไว้กับผนัง
เสบียง
Arduino นาโน
รุ่น Adafruit / Amazon ราคาถูกใด ๆ ต่อไปนี้:
จอ LCD 16x2
ปุ่มกด
โพเทนชิออมิเตอร์ (ตัวต้านทานสารพันจะทำงาน)
สายจัมเปอร์ ตัวผู้-ตัวผู้-ตัวผู้-ตัวเมีย
ลำโพง Piezo
เขียงหั่นขนม
ขั้นตอนที่ 1: โค้ดและการวางแผน
รหัสนั้นง่ายมากและเป็นพื้นฐาน ฉันไม่ได้ต้องการอะไรแฟนซีที่นี่เพราะเป็นโครงการที่รวดเร็ว แต่คุณสามารถยุ่งกับรหัสตามที่คุณต้องการ ฉันวางแผนเกมสำหรับผู้เล่นตั้งแต่หนึ่งถึงสี่คน
ฉันเขียนฟังก์ชัน Arduino เพื่อตอบสนองผู้เล่นสี่คน ฉันเรียกมันว่า "game4p" จากนั้นฉันก็คัดลอกและวางอีกสามครั้งและเปลี่ยนชื่อฟังก์ชัน "game1P", "game2P" ฯลฯ และลบโค้ดพิเศษตามนั้น แนวคิดพื้นฐานมีดังนี้:
1) พิมพ์คะแนน ให้ผู้เล่น 1 คนไป
2) เมื่อผู้เล่นเข้าสู่คะแนน ให้เลื่อนไปยังผู้เล่นคนต่อไปหากมีหนึ่ง
3) ทำซ้ำ (2) จนกว่าผู้เล่นทั้งหมดจะไป แล้วเริ่มกลับมาที่ (1)
4) หากคะแนนของผู้เล่นถึงศูนย์ ให้จบเกมและขอเกมใหม่
คุณสามารถดูรหัสเพื่อดูว่าฉันจัดการกับสิ่งต่าง ๆ เช่น
- ป้อนข้อมูลลงในปุ่มกด
-รับประกันการป้อนข้อมูลที่ดี
- อนุญาตทั้งการบวกและการลบโดยใช้ปุ่มด้านล่างซ้ายและขวาตามลำดับ
ขั้นตอนที่ 2: ปุ่มกด
ฉันใช้ปุ่มกดราคาถูกในการจัดการข้อมูลของฉัน
ไลบรารีปุ่มกดของ Arduino คอยดูแลเบื้องหลังเบื้องหลังสุดเจ๋งที่อธิบายไว้อย่างสวยงามที่นี่ โดยทั่วไปคุณต้องการหนึ่งพินต่อแถวและหนึ่งพินต่อคอลัมน์ฟรีบน Arduino ของคุณ
ในกรณีของฉัน ฉันใช้ปุ่มขวาล่างเพื่อทริกเกอร์การลบ (เพื่อลบคะแนนของคุณจาก 301) และปุ่มซ้ายล่างสำหรับการบวก (ในกรณีที่มีคนทำผิดพลาด เกมจะไม่ถูกทำลาย) การกดปุ่มเหล่านี้โดยไม่ได้ป้อนตัวเลขก่อนจะเป็นการเลื่อนไปยังผู้เล่นคนต่อไป
หลังจากใช้จอภาพแบบอนุกรมเป็นเวลาสองสามนาทีและโค้ดตัวอย่างที่ให้มาซึ่งมาพร้อมกับไลบรารีแป้นกด ฉันก็พร้อมที่จะรวมหน้าจอ LCD เพื่อแสดงการกดแป้น
ขั้นตอนที่ 3: หน้าจอ LCD
อีกครั้งที่ Arduino มีไลบรารี่สำหรับส่วนประกอบนี้เช่นกัน ห้องสมุด LCD จัดการเรื่องตลกทั้งหมดที่หน้าจอ LCD ใช้ ทรัพยากร pinout ที่ดีสามารถพบได้ที่นี่ หน้าจอ LCD ทั้งหมดที่ฉันเคยใช้ใช้ pinout เดียวกันที่อธิบายไว้ในลิงก์นั้น
ในช่วงเวลาของต้นแบบคร่าวๆ ฉันไม่พบโพเทนชิออมิเตอร์ซึ่งจำเป็นต้องปรับความคมชัดของข้อความบนหน้าจอด้วยแสงพื้นหลัง (จำเป็นสำหรับพิน 3) ดังนั้นฉันจึงใช้ตัวต้านทานจำนวนหนึ่งเพื่อสร้างตัวแบ่งแรงดันไฟฟ้าและสำรวจจุดที่ฉันดูสมเหตุสมผล
หลังจากยุ่งกับจอภาพแบบอนุกรมอีกสองสามนาที ฉันก็พร้อมที่จะรวมทุกอย่างเข้าด้วยกัน!
ขั้นตอนที่ 4: ผลิตภัณฑ์ใช้งานขั้นสุดท้าย (หยาบ)
นี่คือวิดีโอของผลิตภัณฑ์เขียงหั่นขนมที่ใช้งานได้จริง ทุกอย่างทำงานได้ตามที่คาดไว้
คุณสามารถหยุดที่นี่หลังเลิกงาน หรือใช้เวลาอีกสองสามชั่วโมงและจัดแพคเกจให้ดูดีกว่า (เล็กน้อย) เหมือนที่ฉันทำ…
ขั้นตอนที่ 5: เสียงระฆังและนกหวีดทั้งหมด
ไม่ มันไม่ใช่ระเบิด มันดูค่อนข้างหยาบ แต่ก็ได้งานทำ!
ฉันได้เพิ่มผู้บรรยายสำหรับการตอบรับที่น่าพอใจซึ่งสอดคล้องกับการกดแป้นที่ดี/ไม่ดี ด้วยกล่องพลาสติกเล็ก ๆ ที่ฉันวางไว้และที่ผูกซิป ฉันสามารถห่อของชิ้นนี้และแขวนไว้บนผนังได้!
ขอบคุณสำหรับการอ่าน โปรดให้คะแนนและพิจารณาโหวตให้ฉันใน "ความท้าทาย 1 ชั่วโมง" ซึ่งส่งการคาดการณ์นี้
อย่าลังเลที่จะถามคำถามในความคิดเห็น!
แนะนำ:
Lazy 7 / Quick Build Edition: 8 ขั้นตอน (พร้อมรูปภาพ)
Lazy 7 / Quick Build Edition: ใช่ อีกอย่างหนึ่ง ฉันจะคัดลอก/วางข้อมูลที่ฉันใส่ใน Thingiverse ที่นี่ เอกสารนี้จำเป็นจริงๆ สำหรับการกำหนดเส้นทางแถบนำเท่านั้น เมื่อเร็ว ๆ นี้ฉันเผยแพร่ 7 Segment Clock - Small Printers Edition จอแสดงผล 7 ส่วนแรกที่ฉันสร้างเรา
Lazy 7 / หนึ่ง: 12 ขั้นตอน (พร้อมรูปภาพ)
Lazy 7 / One: Lazy 7 / OneFeatures/Instructions เหมือนกับโปรเจ็กต์อื่น ๆ ที่อิงจากแบบร่างเดียวกัน นี่คือวิดีโออื่น (ลิงก์จากคำแนะนำแบบร่างในขั้นตอนที่ 10 ด้วย) อัปเดต - 2020/07/30 แยกชิ้นส่วนอิเล็กทรอนิกส์ STL และเพิ่มปก (B)
Lazy Novel Reader's Meal Time Assistance: 14 ขั้นตอน
Lazy Novel Reader's Meal Time Assistance : โครงการช่วยเหลือนักอ่านที่ขี้เกียจอ่านนิยายเวลากินข้าวแต่ไม่อยากทำให้คีย์บอร์ดสกปรก
ปั๊มจักรยานแบบพกพาของ Lazy Man: 15 ขั้นตอน (พร้อมรูปภาพ)
ปั๊มจักรยานแบบพกพาของคนขี้เกียจ: เราเป็นครอบครัวที่มีสี่คนและมีจักรยานสี่คัน ทุกครั้งที่เราต้องการใช้ จะต้องมียางให้เติมทุกครั้ง คอมเพรสเซอร์ของฉันอยู่ในโรงรถ/เวิร์กช็อป และไม่สามารถเข้าถึงได้ง่ายจากจุดที่เราเก็บจักรยาน ดังนั้นเราจึงต้องใช้ h
Lazy Lamp: 4 ขั้นตอน (พร้อมรูปภาพ)
Lazy Lamp: สถานการณ์นี้เคยทำให้คุณแปลกใจไหมว่าเมื่อคุณพร้อมที่จะนอน หลังจากปิดไฟแล้ว คุณจะมองไม่เห็นอะไรเลย เคยไหมที่คุณรู้สึกหนาวๆ อยู่บนเตียง คุณง่วงเกินกว่าจะลุกจากสวิตช์