İçindekiler:
2025 Yazar: John Day | [email protected]. Son düzenleme: 2025-01-13 06:58
Tarafından Seeed StudioSeeed Yazar tarafından Daha Fazla Takip Edin:
Hakkında: Merhaba, biz Seeed'de uygulama mühendisleriyiz. Projeleri yapımcı topluluğuyla paylaşmak harika. Umarım beğenirsiniz XD Seeed, IoT geliştiricilerinin hızla…
Sevgililer Günü yaklaşıyor, ilk görüşte aşık olan biriyle tanışıyor musunuz?
Adım 1: Bu Projede Kullanılanlar
Donanım bileşenleri
- Seeduino V4.2
- Temel Kalkan V2
- Grove - Sürücülü RGB LED Matrisi
- Koru - Su Sensörü
Yazılım uygulamaları ve çevrimiçi hizmetler
Arduino IDE'si
2. Adım: Donanım Bağlantısı
Bu projede, suyu algılamak için bir su sensörü kullanıyoruz, eğer su varsa, RGB LED Matrix'te atan bir kalp görüntülenecektir.
Bu efekti elde etmek için Grove - Su Sensörünü Base Shield'deki D2 portuna bağlamanız ve ayrıca içindeki Grove - RGB LED Matrix'i I2C portuna bağlamanız gerekir. Ardından Base Shield'ı yukarıdaki resimdeki gibi Seeeduino'ya takın.
Adım 3: Yazılım Programlama
RGB LED matrix'i programınızda kullanmak için kütüphanesini Arduino IDE'nize eklemeniz gerekir. Kütüphane şuradan indirilebilir:
Seeed_RGB_LED_Matrix
Kitaplığı ekledikten sonra, matrisin başlık dosyasını kodunuza ekleyin:
#include "grove_two_rgb_led_matrix.h"
Makroları tanımlamak iyi bir alışkanlıktır, kodunuzun okunmasını veya değiştirilmesini kolaylaştırabilir. Örneğin, su sensörünün hangi bağlantı noktasına bağlı olduğunu veya atan kalbin hangi hızı göstermesi gerektiğini belirtmek için makrolar tanımlayabilirsiniz.
#define SENSOR_PIN 2
#define ARALIK 500
Her şey bittiğinde, daha sonra kullanmak üzere bir matris örneği bildirin.
GroveTwoRGBLedMatrixClass matrisi;
Ve kendi resimlerinizi oluşturmak için resim düzenleyiciyi almak için buraya tıklayın. Renk çubuğunda renk seçimi, çizim alanında çizilecek noktalara tıklanması ve çizim alanının altındaki Güncelle veya Ekle butonuna basılması ile görseliniz koda dönüştürülerek sağdaki kutuda görüntülenecektir.
Resmim aşağıdaki gibi görünüyor. Görüntülenen kodu projenize kopyalayabilir ve ardından kodlayarak RGB LED matrisinde gösterebilirsiniz.
Programınız başladığında setup() prosedürü bir kez çalıştırılacaktır, bu nedenle matris ve su sensörünün pinini onun içinde başlatıyoruz.
geçersiz kurulum() {
Wire.begin(); pinMode(SENSR_PIN, INPUT); WAIT_MATRIX_READY(); }
loop() prosedürü tekrar tekrar çalışacaktır, bu yüzden aşağıdaki kodu kullanarak su olup olmadığını tespit etmek için kullanırız:
if (digitalRead(SENSOR_PIN) == DÜŞÜK) {
}
Su sensörü DÜŞÜK çıkış verdiğinde, su olduğu anlamına gelir, bu nedenle atan kalp RGB LED matrisinde görüntülenmelidir
for (uint8_t i = 0; i < EMOJI_COUNT(örnek); ++i) { matrix.displayFrames(EMOJI(örnek, i), ARALIK, yanlış, 1); Gecikme aralığı); }
Tamamlanan loop() prosedürü aşağıdaki gibidir ve bu makalenin sonunda kodun tamamını indirebilirsiniz.
boşluk döngüsü () {
if (digitalRead(SENSOR_PIN) == LOW) { for (uint8_t i = 0; i < EMOJI_COUNT(örnek); ++i) { matrix.displayFrames(EMOJI(örnek, i), ARALIK, yanlış, 1); Gecikme aralığı); } } }
Programınızı Seeeduino'ya yüklemek için Arduino IDE'deki Yükle düğmesine tıklayın ve su sensörüne ıslak bir şey koymaya çalışın, ne olduğunu görün.
ÖNEMLİ:
RGB LED matrix'in bu sürümünde, kendi görüntünüzü UNO seri ile diy yapmak istiyorsanız, arduino dosyasını değiştirmeniz gerekir. Mega veya lotus kullanırsanız, değişiklik gerekli olmayacaktır.
Arduino\hardware\arduino\avr\libraries\Wire\src arduino kurulum klasörünü bulun, Wire.h dosyasını açın
değiştirmek
#define BUFFER_LENGTH 32
içine
#define BUFFER_LENGTH 128
Ardından Arduino\hardware\arduino\avr\libraries\Wire\src\utility arduino kurulum klasörünü bulun, twi.h dosyasını açın.
değiştirmek
#define TWI_BUFFER_LENGTH 32
içine
#define TWI_BUFFER_LENGTH 128