8x8 Dot Matrix Led İle Saksı Nem Ölçer

ÇİÇEK DOSTU SAKSI PROJESİ: SAKSI-GÜL

Kullanılan Malzemeler:  8x8 dot matrix led modül, arduino nano, toprak nem sensörü, çeşitli kablolar ve güç kaynağı.






























Projenin Arduino Yazılımı:

#include <MaxMatrix.h>
byte smiley[] =
{ 8, 8,
  B01000010,
  B10100101,
  B00000000,
  B00000000,
  B01000010,
  B01000010,
  B00111100,
  B00000000,
};
byte smiley2[] =
{ 8, 8,
  B00000000,
  B01000010,
  B10100101,
  B00000000,
  B00111100,
  B01000010,
  B10000001,

  B00000000,
};
byte smiley3[] =
{ 8, 8,
  B01000010,
  B10100101,
  B00000000,
  B00000000,
  B00111100,
  B00100100,
  B00011000,
  B00000000,
};
byte smiley4[] =
{ 8, 8,
  B00000000,
  B01100110,
  B11111111,
  B11111111,
  B01111110,
  B00111100,
  B00011000,
  B00000000,
};
byte smiley5[] =
{ 8, 8,
  B01111110,
  B10000001,
  B10100101,
  B10000001,
  B10100101,
  B10011001,
  B10000001,
  B01111110,
};
const int sensorMin = 0; // sensor minimum
const int sensorMax = 760; // sensor maximum 1024
int data = 12;
int load = 11;
int clock = 10;
int maxInUse = 1;
MaxMatrix m(data, load, clock, maxInUse);
byte buffer[100];
int shift_speed = 500;
void setup() {
  m.init();
  m.setIntensity(3);
  Serial.begin(9600);
  m.writeSprite(0, 0, smiley);
  delay(500);
  m.writeSprite(0, 0, smiley2);
  delay(500);
  m.writeSprite(0, 0, smiley3);
  delay(500);
}
void loop() {
  int sensorReading = analogRead(A0);
  Serial.println (sensorReading);
  delay(500);
  int range = map(sensorReading, sensorMin, sensorMax, 0, 3);
  switch (range) {
    case 0:
      m.writeSprite(0, 0, smiley3);
      delay(1000);
      m.writeSprite(0, 0, smiley4);
      break;
    case 1:
      m.writeSprite(0, 0, smiley);
      delay(1000);
      m.writeSprite(0, 0, smiley5);
      break;
    case 2:
      m.writeSprite(0, 0, smiley2);
      break;
  }
  delay(50);
}





Hiç yorum yok:

Yorum Gönder