การล็อกดาวน์ช่วง COVID-19 เป็นเรื่องน่าเบื่อสำหรับพวกเราทุกคน ดังนั้น ในขณะที่โลกกำลังเปลี่ยนเป็นดิจิทัล ทำไมลูกเต๋าแบบเก่าจะทำไม่ได้ล่ะ? มาเริ่มกันเลย..
โปรเจกต์นี้ทำงานด้วยการกดปุ่ม (ตามตัวอักษรเลย XD) โดยใช้ตัวสร้างค่าสุ่มเพื่อสร้างตัวเลขสุ่มตั้งแต่ 1 ถึง 6
การตั้งค่าฮาร์ดแวร์และการเริ่มต้น
ลูกเต๋าอิเล็กทรอนิกส์ DIY นี้ใช้ LED หกตัวเพื่อแสดงหน้าลูกเต๋ามาตรฐาน LED แต่ละตัวเชื่อมต่อกับ digital pin เฉพาะ (2 ถึง 7) บน Arduino Uno ในขณะที่ momentary push button ใช้เป็นตัวทริกเกอร์บน pin 11
การตั้งโปรแกรมการสุ่ม
แกนหลักของตรรกะอยู่ในฟังก์ชัน random(min, max) ใน Arduino, random(1, 7) จะสร้างเลขจำนวนเต็มแบบ pseudo-random ระหว่าง 1 ถึง 6 เพื่อให้แน่ใจว่าลำดับจะไม่สามารถคาดเดาได้หลังจากการรีเซ็ต วิธีปฏิบัติที่ดีที่สุดคือการ seed ตัวสร้างโดยใช้ randomSeed(analogRead(0)) หากคุณมี analog pin ที่ไม่ได้เชื่อมต่อ
โครงสร้างโค้ด
เรากำหนด pin และติดตามสถานะของปุ่ม:
int ledPins[] = {2, 3, 4, 5, 6, 7};
int button = 11;
int buttonState = 0;
ขั้นตอนการทำงานของเกม
- การตรวจจับอินพุต: Arduino จะตรวจสอบสถานะของปุ่มอย่างต่อเนื่องโดยใช้
digitalRead(button) - การเรียกใช้การทอย: หากปุ่มถูกกด (
buttonState == 1) โค้ดจะเรียกใช้ฟังก์ชัน random - การแสดงผล LED: ขึ้นอยู่กับตัวเลขที่ได้ (1-6) LED เฉพาะจะถูกตั้งค่าเป็น
HIGHตัวอย่างเช่น ผลลัพธ์เป็น '3' จะเปิด LED สามดวงในขณะที่ LED ดวงอื่น ๆ ถูกตั้งค่าเป็นLOW - การล็อกการแสดงผล: มีการใช้
delay(10000)เพื่อให้ผลลัพธ์ปรากฏให้เห็นก่อนที่จะรีเซ็ตสำหรับการทอยครั้งต่อไป
การปรับแต่งอย่างสร้างสรรค์
เพื่อให้ลูกเต๋ามีความสมจริงมากขึ้น คุณสามารถจัดเรียง LED ในรูปแบบตาราง 3x3 แบบดั้งเดิม (ใช้ LED ทั้งหมด 7 ตัวเพื่อรวมจุดตรงกลาง) คุณยังสามารถเพิ่มแอนิเมชัน "การทอย" โดยที่ LED จะกะพริบอย่างรวดเร็วเป็นเวลาสองสามวินาทีก่อนที่จะแสดงผลลัพธ์สุดท้าย ซึ่งจะเพิ่มความระทึกใจให้กับเกม!