Arama butonu
Bu konudaki kullanıcılar: 1 misafir
4
Cevap
496
Tıklama
0
Öne Çıkarma
Void loop kodunu birleştirme
S
4 yıl
Teğmen

Sorun nedir? Tek döngüde sen de yazabilirsin bu kodu. Çözemediğin konuda yardım etmeye çalışalım, derleme hatalarını vb... İşin işçiliğini yine sen yap olmaz mı :) ?



O
4 yıl
Teğmen

Kodlarını tek void loop içerisine yaz. Sadece mesafe(), melodi(), fnkFormat() gibi fonksiyonları loop döngüsü dışına taşı. Zaten kodu yazmışsın...



R
4 yıl
Binbaşı

Yukaridaki kodlari ben yazdim diyorsun, sorduğun sorunun cevabı yazdığın kodlardan cok daha basit.

Gerekli yönlendirmeyi yukaridaki arkadaşlar yapmışlar.



< Bu ileti mobil sürüm kullanılarak atıldı >

A
4 yıl
Er
Konu Sahibi

Arkadaşlar merhaba ben bi kod yazdım fakat 2 si ayrı olarak bunları birleştirebilirmisiniz kodların sadece void loop kısmını vericem çünkü diğerlerini hallettim kodlar:

void loop()
{

int olcum = mesafe(maximumRange, minimumRange);
melodi(olcum*10);

}

int mesafe(int maxrange, int minrange)
{
seviye = analogRead(Sensor);
if (seviye > esik)
{
digitalWrite (LED, HIGH);
delay (1000);
digitalWrite (LED, LOW);
}
else
{
digitalWrite(LED, LOW);
}

long duration, distance;

digitalWrite(trigPin,LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);

duration = pulseIn(echoPin, HIGH);
distance = duration / 58.2;
delay(50);

if(distance >= maxrange || distance <= minrange)
return 0;
return distance;
}

int melodi(int dly)
{
tone(buzzerPin, 440);
delay(dly);
noTone(buzzerPin);
delay(dly);

}

-----------------------------------------------------

void loop()
{
if(basla==0)
{
if(digitalRead(baslaButton) == 1)
{
basla = 1;
delay(500);
}
if(digitalRead(saatButton) == 1)
{
saat=saat+1;
fnkFormat();
delay(250);
}
if(digitalRead(dakikaButton) == 1)
{
dakika=dakika+1;
if(dakika == 60)
{
dakika=0;
saat=saat+1;
}
fnkFormat();
delay(250);
}
}
if(basla==1)
{
lcd.clear();
fnkFormat();
if(saniye == 0)
{
if(dakika == 0)
{
if(saat == 0)
{
digitalWrite(ledPin, HIGH);
Serial.print("Time: ");
time = millis();
Serial.println(time);
delay(500);
if (time > 300000) {
Serial.print ("Timer has ended ");
digitalWrite(led10, HIGH);
}
}
else
{
saat = saat - 1;
dakika=59;
saniye=59;
}
}
else
{
dakika = dakika - 1;
saniye=59;
}
}
else
{
saniye = saniye - 1;
}
delay(1000);
}
}

DH forumlarında vakit geçirmekten keyif alıyor gibisin ancak giriş yapmadığını görüyoruz.

Üye olduğunda özel mesaj gönderebilir, beğendiğin konuları favorilerine ekleyip takibe alabilir ve daha önce gezdiğin konulara hızlıca erişebilirsin.

Üye Ol Şimdi Değil



A
4 yıl
Er
Konu Sahibi

tamam düzelttim teşekkürler



DH Mobil uygulaması ile devam edin. Mobil tarayıcınız ile mümkün olanların yanı sıra, birçok yeni ve faydalı özelliğe erişin. Gizle ve güncelleme çıkana kadar tekrar gösterme.