ย้อนวันวานยุค 90: Arduino Tamagotchi
เครื่องจำลอง Tamagotchi นับเป็นความสำเร็จครั้งใหญ่ในการเขียนโปรแกรมสำหรับ Arduino Uno เป็นการผสมผสานระหว่างกราฟิกความละเอียดสูง, ตรรกะแบบ state-machine, การบันทึกข้อมูลลงในหน่วยความจำ EEPROM และลูปเกมที่ทำงานต่อเนื่อง เพื่อสร้าง "สัตว์เลี้ยงเสมือนจริง" ที่มีชีวิตชีวา

การแสดงผลกราฟิก
เพื่อให้สัตว์เลี้ยงดูมีชีวิตชีวา คุณต้องใช้ matrix LCD (เช่น Nokia 5110 หรือ 128x64 OLED) แทนที่จะเป็นจอแสดงผลตัวอักษร 16x2 แบบธรรมดา
- Sprites: คุณวาดแอนิเมชันของสัตว์เลี้ยง (เช่น มีความสุข, เศร้า, กิน) ทีละพิกเซลบน PC, แปลงเป็น hex arrays และจัดเก็บไว้ใน
PROGMEMของ Arduino (Flash memory) - ไลบรารีจอแสดงผล: ไลบรารีอย่าง
U8g2หรือAdafruit_GFXจะจัดการกับการส่ง hex arrays เหล่านี้ไปยังหน้าจออย่างรวดเร็ว เพื่อสร้างแอนิเมชัน
เอนจินสถานะ
สัตว์เลี้ยงมีตัวแปรต่างๆ เช่น hunger_level, happiness_level และ health
- เมื่อเวลาผ่านไป (โดยใช้ฟังก์ชัน
millis()) ตัวแปรเหล่านี้จะลดลง - ผู้ใช้กดปุ่มใดปุ่มหนึ่งจากสามปุ่มเพื่อ "Feed," "Clean," หรือ "Play" ซึ่งจะคืนค่าตัวแปรเหล่านี้
- โดยใช้ไลบรารี
EEPROM.hArduino จะบันทึกสถิติของสัตว์เลี้ยงไว้ก่อนที่คุณจะปิดเครื่อง ดังนั้นสัตว์เลี้ยงจะ "จำ" สถานะของมันได้เมื่อคุณเปิดเครื่องกลับมาอีกครั้ง!
ส่วนประกอบ
- Arduino Uno: คอนโซลเกม
- Nokia 5110 / OLED Display: หน้าจอ
- Push Buttons (x3): สำหรับโต้ตอบ
- Piezo Buzzer: สำหรับแจ้งเตือนเสียง "บี๊บ" เมื่อสัตว์เลี้ยงหิว