Daftar Isi:
2025 Pengarang: John Day | [email protected]. Terakhir diubah: 2025-01-13 06:57
Oleh Seeed StudioSeeed Ikuti Selengkapnya oleh penulis:
Tentang: Halo, kami adalah insinyur aplikasi di Seeed. Berbagi proyek dengan komunitas pembuat itu luar biasa. Semoga Anda menyukainya XD Seeed adalah pengaktif perangkat keras IoT yang menyediakan layanan yang memberdayakan pengembang IoT untuk dengan cepat … Selengkapnya Tentang Seeed Studio »
Hari Valentine akan datang, apakah Anda bertemu seseorang yang jatuh cinta pada pandangan pertama?
Langkah 1: Hal-hal yang Digunakan dalam Proyek Ini
Komponen perangkat keras
- Seeeduino V4.2
- Perisai Dasar V2
- Grove - Matriks LED RGB dengan Driver
- Grove - Sensor Air
Aplikasi perangkat lunak dan layanan online
Arduino IDE
Langkah 2: Koneksi Perangkat Keras
Dalam proyek ini, kami menggunakan sensor air untuk mendeteksi air, jika ada air, detak jantung akan ditampilkan di RGB LED Matrix.
Untuk mencapai efek ini, Anda perlu menghubungkan Grove - Water Sensor ke port D2 di Base Shield, dan juga menghubungkan Grove - RGB LED Matrix ke port I2C di dalamnya. Kemudian pasang Base Shield ke Seeeduino, seperti gambar di atas.
Langkah 3: Pemrograman Perangkat Lunak
Untuk menggunakan matriks LED RGB dalam program Anda, Anda perlu menambahkan perpustakaannya ke Arduino IDE Anda. Perpustakaan dapat diunduh di
Seeed_RGB_LED_Matrix
Setelah menambahkan perpustakaan, sertakan file header matriks dalam kode Anda:
#sertakan "grove_two_rgb_led_matrix.h"
Mendefinisikan makro adalah kebiasaan yang baik, ini dapat membuat kode Anda lebih mudah dibaca atau dimodifikasi. Misalnya, Anda dapat menentukan makro untuk menunjukkan port mana yang terhubung dengan sensor air, atau kecepatan apa yang harus ditunjukkan oleh detak jantung.
#tentukan SENSOR_PIN 2
#menentukan INTERVAL 500
Setelah semuanya selesai, deklarasikan instance matriks untuk digunakan nanti.
Matriks GroveTwoRGBLedMatrixClass;
Dan klik di sini untuk mendapatkan editor gambar untuk membuat gambar Anda sendiri. Memilih warna di bilah warna, mengklik titik-titik di area gambar untuk menggambar, dan menekan tombol Perbarui atau Sisipkan di bagian bawah area gambar, gambar Anda akan dikonversi menjadi kode dan ditampilkan di kotak di sebelah kanan.
Gambar saya terlihat seperti di bawah ini. Anda dapat menyalin kode yang ditampilkan ke proyek Anda, dan kemudian menampilkannya dalam matriks LED RGB dengan pengkodean.
Prosedur setup() akan dijalankan satu kali ketika program Anda dimulai, jadi kami menginisialisasi matriks dan pin sensor air di dalamnya.
batalkan pengaturan() {
Kawat.mulai(); pinMode(SENSR_PIN, INPUT); WAIT_MATRIX_READY(); }
Prosedur loop() akan berjalan berulang-ulang, jadi kami menggunakannya untuk mendeteksi apakah ada air atau tidak dengan kode berikut:
if (digitalRead(SENSOR_PIN) == RENDAH) {
}
Ketika output sensor air RENDAH, itu berarti ada air, jadi detak jantung harus ditampilkan dalam matriks LED RGB
for (uint8_t i = 0; i < EMOJI_COUNT(contoh); ++i) { matrix.displayFrames(EMOJI(contoh, i), INTERVAL, false, 1); penundaan (INTERVAL); }
Prosedur loop() selesai terlihat seperti di bawah ini, dan Anda dapat mengunduh kode lengkapnya di akhir artikel ini.
lingkaran kosong() {
if (digitalRead(SENSOR_PIN) == RENDAH) { for (uint8_t i = 0; i < EMOJI_COUNT(contoh); ++i) { matrix.displayFrames(EMOJI(contoh, i), INTERVAL, false, 1); penundaan (INTERVAL); } } }
Klik tombol Unggah di Arduino IDE untuk mengunggah program Anda ke Seeeduino, dan coba letakkan sesuatu yang basah ke sensor air, lihat apa yang terjadi.
PENTING:
Dalam versi firmware matriks LED RGB ini jika Anda ingin membuat gambar Anda sendiri dengan serial UNO, Anda perlu memodifikasi file arduino. Jika Anda menggunakan mega atau lotus, perubahan tidak diperlukan.
Cari folder setup arduino Arduino\hardware\arduino\avr\libraries\Wire\src, buka file Wire.h
mengubah
#tentukan BUFFER_LENGTH 32
ke dalam
#tentukan BUFFER_LENGTH 128
Kemudian cari folder setup arduino Arduino\hardware\arduino\avr\libraries\Wire\src\utility, buka file twi.h.
mengubah
#define TWI_BUFFER_LENGTH 32
ke dalam
#define TWI_BUFFER_LENGTH 128