Programlama Kodları
//AÇIKLAMA
//Bu uygulamada sensör renkleri okur ve ham değerler seri port ekranına yazdırılır.
#define S0 4
#define S1 5
#define S2 6
#define S3 7
#define sensor_out 8
int red_ham = 0;
int green_ham = 0;
int blue_ham = 0;
void setup()
{
Serial.begin(9600);
pinMode(S0, OUTPUT);
pinMode(S1, OUTPUT);
pinMode(S2, OUTPUT);
pinMode(S3, OUTPUT);
pinMode(sensor_out, INPUT);
//sensörün çıkış frekansını %20 olarak ölçeklendirme
digitalWrite(S0, HIGH);
digitalWrite(S1, LOW);
}
void loop()
{
//kırmızı renk okuma
red_ham = kirmizi_ham_oku();
delay(200);
//yeşil renk okuma
green_ham = yesil_ham_oku();
delay(200);
//mavi renk okuma
blue_ham = mavi_ham_oku();
delay(200);
Serial.print("Kırmızı = "); Serial.print(red_ham); Serial.print(" | ");
Serial.print("Yeşil = "); Serial.print(green_ham); Serial.print(" | ");
Serial.print("Mavi = "); Serial.println(blue_ham);
}
int kirmizi_ham_oku()
{
int ham;
digitalWrite(S2, LOW);
digitalWrite(S3, LOW);
ham = pulseIn(sensor_out, LOW);
return ham;
}
int yesil_ham_oku()
{
int ham;
digitalWrite(S2, HIGH);
digitalWrite(S3, HIGH);
ham = pulseIn(sensor_out, LOW);
return ham;
}
int mavi_ham_oku()
{
int ham;
digitalWrite(S2, LOW);
digitalWrite(S3, HIGH);
ham = pulseIn(sensor_out, LOW);
return ham;
}
Devre Şeması
Kırmızıya En Yakın Durumda Seri Port Ekranı
Maviye En Yakın Durumda Seri Port Ekranı
Yeşile En Yakın Durumda Seri Port Ekranı

0 comments:
Yorum Gönder