Yazılım özürlüye yardım (boş geçmeyelim)

servo hızını epeyce düşürmem lazım. ona bağlı olarak çıkışların zamanları da değişecek. ben biraz kurcalayayım hem belki biraz öğrenmiş olurum. yardımlarınız için teşekkür ederim. @semih_s
 
servo hızını epeyce düşürmem lazım. ona bağlı olarak çıkışların zamanları da değişecek. ben biraz kurcalayayım hem belki biraz öğrenmiş olurum. yardımlarınız için teşekkür ederim. @semih_s
Valla benim için zevk :) . Yoksa hayatta uğraşmam <<devil emoji>> @taydin hocam buraya evil/devil emoji gerek. Bana çok(!) lazım oluyor. Bir el atsanız? Bir de melek emoji eklenebilir de çok gerekli değil.
 
Kod:
#include <Servo.h>

Servo servoMotor; // Servo nesnesi oluşturuluyor
int pin11 = 11;
int pin12 = 12;
int pin13 = 13;
int pin10 = 10;

unsigned long previousMillis = 0; // Önceki zamanı saklamak için değişken
const long interval = 1000; // LEDlerin durum değişimi için interval (1 saniye)

void setup() {
  pinMode(pin11, OUTPUT);
  pinMode(pin12, OUTPUT);
  pinMode(pin13, OUTPUT);
  pinMode(pin10, OUTPUT);

  // Servo için başlangıç konumu ayarlanıyor
  servoMotor.attach(9); // Servo sinyali pin 9'a bağlı
  servoMotor.write(0); // Servo başlangıçta 0 derecede

  // Pin 11 yüksek olacak ve sabit kalacak
  digitalWrite(pin11, HIGH);
}

void loop() {
  unsigned long currentMillis = millis(); // Geçerli zamanı al

  // 1 saniyede bir pin 12 ve 13 sırayla LOW ve HIGH yapacak
  if (currentMillis - previousMillis >= interval) {
    previousMillis = currentMillis; // Zamanı güncelle

    digitalWrite(pin12, !digitalRead(pin12)); // Pin 12'nin durumunu ters çevir
    digitalWrite(pin13, !digitalRead(pin13)); // Pin 13'ün durumunu ters çevir
  }

  // Servo 80 dereceye gidene kadar bekleyecek
  if (currentMillis >= 3000 && currentMillis < 8000) {
    servoMotor.write(80);
  }

  // Servo 0 dereceye geri gelecek
  if (currentMillis >= 8000) {
    servoMotor.write(0);
  }

  // Servo 0'a geldikten 1 saniye sonra pin 10 high olacak
  if (currentMillis >= 9000) {
    digitalWrite(pin10, HIGH);
  }

  // Döngü tamamlanacak, tüm çıkışlar low olacak ve bir daha başlamayacak
  if (currentMillis >= 10000) {
    digitalWrite(pin11, LOW);
    digitalWrite(pin12, LOW);
    digitalWrite(pin13, LOW);
    digitalWrite(pin10, LOW);

    // Sonsuz döngüyü durdur
    while (true) {
      // Boş
    }
  }
}
Yapay zekaya anlattım, o yazdı. Kod çeşitliliği olsun
 
Son düzenleme:
Kod:
#include <Servo.h>

Servo servoMotor; // Servo nesnesi oluşturuluyor
int pin11 = 11;
int pin12 = 12;
int pin13 = 13;
int pin10 = 10;

unsigned long previousMillis = 0; // Önceki zamanı saklamak için değişken
const long interval = 1000; // LEDlerin durum değişimi için interval (1 saniye)

void setup() {
  pinMode(pin11, OUTPUT);
  pinMode(pin12, OUTPUT);
  pinMode(pin13, OUTPUT);
  pinMode(pin10, OUTPUT);

  // Servo için başlangıç konumu ayarlanıyor
  servoMotor.attach(9); // Servo sinyali pin 9'a bağlı
  servoMotor.write(0); // Servo başlangıçta 0 derecede

  // Pin 11 yüksek olacak ve sabit kalacak
  digitalWrite(pin11, HIGH);
}

void loop() {
  unsigned long currentMillis = millis(); // Geçerli zamanı al

  // 1 saniyede bir pin 12 ve 13 sırayla LOW ve HIGH yapacak
  if (currentMillis - previousMillis >= interval) {
    previousMillis = currentMillis; // Zamanı güncelle

    digitalWrite(pin12, !digitalRead(pin12)); // Pin 12'nin durumunu ters çevir
    digitalWrite(pin13, !digitalRead(pin13)); // Pin 13'ün durumunu ters çevir
  }

  // Servo 80 dereceye gidene kadar bekleyecek
  if (currentMillis >= 3000 && currentMillis < 8000) {
    servoMotor.write(80);
  }

  // Servo 0 dereceye geri gelecek
  if (currentMillis >= 8000) {
    servoMotor.write(0);
  }

  // Servo 0'a geldikten 1 saniye sonra pin 10 high olacak
  if (currentMillis >= 9000) {
    digitalWrite(pin10, HIGH);
  }

  // Döngü tamamlanacak, tüm çıkışlar low olacak ve bir daha başlamayacak
  if (currentMillis >= 10000) {
    digitalWrite(pin11, LOW);
    digitalWrite(pin12, LOW);
    digitalWrite(pin13, LOW);
    digitalWrite(pin10, LOW);

    // Sonsuz döngüyü durdur
    while (true) {
      // Boş
    }
  }
}
Yapay zekaya anlattım, o yazdı. Kod çeşitliliği olsun
Yanlış bile yazsa geri dönüşleri kabul edip düzeltme yapabiliyor. Yazılımla uğraşmaya yeni başlayanları düşünsene :). Senaristlerin bile pabucu dama atılmış. Sanırım yapay zeka sayesinde gelecekte insanlar arasında eşitlik sağlanacak, herkes eşit derecede işe yaramaz olacak :) .
 
Valla benim için zevk :) . Yoksa hayatta uğraşmam <<devil emoji>> @taydin hocam buraya evil/devil emoji gerek. Bana çok(!) lazım oluyor. Bir el atsanız? Bir de melek emoji eklenebilir de çok gerekli değil.

Al sana iki tane şeytan. Bunlar zaten forumda vardı, sadece ulaşılabilir yaptım. Daha iyi şeytan bulursan onları da ekleriz :D

:seytan1:
:seytan2:
 

Forum istatistikleri

Konular
7,234
Mesajlar
122,410
Üyeler
2,922
Son üye
Spacetr

Son kaynaklar

Son profil mesajları

Freemont2.0 herbokolog Freemont2.0 wrote on herbokolog's profile.
nick iniz yakıyor
:D
Freemont2.0 posta Freemont2.0 wrote on posta's profile.
Merhabalar :)
az bilgili çok meraklı
Prooffy semih_s Prooffy wrote on semih_s's profile.
Merhaba, sizden DSO2C10 hakkında bilgi rica ettim. Yanıtlarsanız sevinirim...
Unal taydin Unal wrote on taydin's profile.
Timur Bey, Arduino kontrollü bir akü şarj cihazı yapmaya çalışıyorum. Aklımdaki fikri basit bir çizim olarak konu açmıştım. Özellikle sizin fikirlerinizi çok önemsiyorum.
Back
Top