mehmetaliözdemir
Aktif Üye
- Katılım
- 17 Nisan 2021
- Mesajlar
- 937
öncelikle şunu belirteyim arduino proglamlamaya 2 saat önce başladım ve yazılım konusunda sıfıra yakın bilgim var. kodlardaki saçmalıkları mazur görün.
yapmak istediğim şuydu;
enerji verildiğinde pin 11 high olacak ve öyle kalacak. aynı anda pin 12 ve 13 birer saniye aralıklarla sırayla high-low olacak. 3 saniye sonra servo 80 dereceye gidecek ve 5 saniye bekledikten sonra 0 dereceye geri gelecek. tabi bu arada 11,12 ve 13 işlerini yapmaya devam edecek. servo sıfıra geldikte 1 saniye sonra pin 10 high olacak . döngü tamamlanacak tüm çıkışlar low olacak ve bir daha başlamayacak.
servoyu ve dijital çıkışları kısmen de olsa ayrı ayrı çalıştırdım ama ikisini birleştiremiyorum.
yapmak istediğim şuydu;
enerji verildiğinde pin 11 high olacak ve öyle kalacak. aynı anda pin 12 ve 13 birer saniye aralıklarla sırayla high-low olacak. 3 saniye sonra servo 80 dereceye gidecek ve 5 saniye bekledikten sonra 0 dereceye geri gelecek. tabi bu arada 11,12 ve 13 işlerini yapmaya devam edecek. servo sıfıra geldikte 1 saniye sonra pin 10 high olacak . döngü tamamlanacak tüm çıkışlar low olacak ve bir daha başlamayacak.
servoyu ve dijital çıkışları kısmen de olsa ayrı ayrı çalıştırdım ama ikisini birleştiremiyorum.
çıkışlar:
void setup()
{
pinMode(13, OUTPUT);
pinMode(12, OUTPUT);
pinMode(11, OUTPUT);
pinMode(10, OUTPUT);
}
void loop()
{
digitalWrite(11, HIGH);
digitalWrite(13, HIGH);
delay(1000);
digitalWrite(13, LOW);
digitalWrite(12, HIGH);
delay(1000);
digitalWrite(12, LOW);
}
servo:
#include <Servo.h>
int pos = 0;
Servo servo_9;
void setup()
{
servo_9.attach(9, 500, 2500);
pinMode(13, OUTPUT);
}
void loop()
{
for (pos = 0; pos <= 80; pos += 1) {
servo_9.write(pos);
delay(50);
}
delay(5000);
for (pos = 80; pos >= 0; pos -= 1) {
servo_9.write(pos);
delay(30);
}
delay(2000);}
Son düzenleme: