กลับไปหน้ารวมไฟล์
i-love-you-beating-heart-8x8-display-with-a-max7219-3bc8dc.md

I Love You! - หัวใจเต้น - จอแสดงผล 8x8 พร้อม MAX7219

ตรรกะไบนารีของ Grid: จอแสดงผล 8x8 หัวใจเต้น

การเชื่อมต่อ LED 64 ดวงแยกกันเข้ากับ Arduino Uno นั้นเป็นไปไม่ได้ในทางกายภาพ เพราะมีพินเพียง 14 พินเท่านั้น! โปรเจกต์ หัวใจเต้นบนจอแสดงผล 8x8 MAX7219 นำเสนอความมหัศจรรย์ของ "Multiplexing" เชิงอัลกอริทึมที่บริสุทธิ์ โดยการส่งมอบงานหนักให้กับชิป MAX7219 ในตำนาน โปรแกรมเมอร์สามารถสร้างสัญลักษณ์ภาพขนาดใหญ่ที่ซับซ้อนได้ผ่านการสร้าง C++ Hexadecimal array โดยใช้สาย SPI เพียง 3 เส้น!

1306_oled_retro_game_display_1772681532057.png

การสร้าง Binary Character Array

จอแสดงผลมี 8 แถวและ 8 คอลัมน์ คุณต้องสร้าง "รูปภาพ" โดยใช้ raw mathematical bytes

  1. Giant Heart Vector: คุณสร้าง array ที่ประกอบด้วยข้อมูล 8 bytes
byte bigHeart[8] = {
  B01100110, // ส่วนโค้งด้านบน
  B11111111,
  B11111111,
  B11111111, // บล็อกกลางที่กว้างที่สุด!
  B01111110, // เริ่มเรียวลง
  B00111100,
  B00011000,
  B00000000  // จุดเล็กๆ ด้านล่างสุด!
};
  1. Small Heart Vector: คุณสร้าง array ที่เหมือนกันของรูปหัวใจขนาดเล็กที่ย่อส่วนลง
  2. Animation Loop (LedControl.h): ลูป C++ ใช้ lc.setRow() เพื่อส่ง bigHeart array ไปยัง matrix อย่างรวดเร็ว จากนั้นเรียกใช้ delay(300); และเขียนทับทั้งหน้าจออย่างรุนแรงด้วย smallHeart array! การสลับที่รวดเร็วอย่างไม่น่าเชื่อนี้สร้างภาพลวงตาทางกายภาพของจังหวะการเต้นของหัวใจสีแดง!

โครงสร้าง MAX7219 Cascade

เหตุผลที่โปรเจกต์นี้สามารถขยายขนาดได้ไม่จำกัดคือตรรกะแบบ Cascade

  • MAX7219 ใช้สายไฟสามเส้น: DIN (Data), CS (Select), CLK (Clock)
  • หากคุณต้องการหน้าจอที่ใหญ่ขึ้น คุณสามารถบัดกรี 8x8 grid ตัวที่สองเข้ากับพินเอาต์พุตของ grid ตัวแรกได้โดยตรง!
  • โปรโตคอล SPI จะ "ดัน" byte code ลงไปในระบบโดยอัตโนมัติ ทำให้คุณสามารถเชื่อมต่อ arrays ขนาดใหญ่ (เช่น บล็อก 32x8) ได้โดยไม่ต้องใช้สายไฟเพิ่มเติมแม้แต่เส้นเดียวจาก Arduino!

ส่วนประกอบสำหรับ Matrix Valentine

  • Arduino Uno/Nano (ฟอร์มแฟกเตอร์มาตรฐานเพียงพอแล้ว)
  • 8x8 LED Matrix พร้อม MAX7219 Driver Backpack (อย่าซื้อ LED matrix เปล่าๆ ที่ไม่มีชิป เพราะการบัดกรีพินขนาน 16 พินด้วยตนเองและเขียนโค้ด multiplexer ตั้งแต่เริ่มต้นนั้นทรมานอย่างยิ่ง!)
  • Generic 5V Battery Pack เพื่อการพกพา!

ข้อมูล Frontmatter ดั้งเดิม

title: "I Love You! - Beating Heart - 8X8 Display with a MAX7219"
description: "Mathematical topography Arrays! Leverage the high-speed cascading logic of the MAX7219 SPI driver to physically command a 64-LED monolithic grid, executing massive binary bitmaps of expanding heart animations."
category: "Art & Wearables"
difficulty: "Intermediate"