Всем здравствуйте при создании проекта у меня появилась проблема работает скетч так при попадание света на фоторезистор зажигается светодиод и поворачивается сервопривод и после 5 секунд светодиод потухает и сервопривод поворачивается обратно а происходит так что сервопривод поворачивается только после 5 секунд и почти сразу поворачивается обратно что делать подскажите пожалуйста.
Вот скетч:
#include <Servo.h>
#define YELLOW1 2
#define YELLOW2 3
#define YELLOW3 4
#define PIN_PHOTO_SENSOR A0
#define PIN_PHOTO_SENSOR1 A1
#define PIN_PHOTO_SENSOR2 A2
Servo servo1;
Servo servo2;
Servo servo3;
void setup() {
Serial.begin(9600);
pinMode(PIN_PHOTO_SENSOR, INPUT);
pinMode(PIN_PHOTO_SENSOR2, INPUT);
pinMode(PIN_PHOTO_SENSOR1, INPUT);
pinMode(YELLOW1, OUTPUT);
pinMode(YELLOW2, OUTPUT);
pinMode(YELLOW3, OUTPUT);
servo1.attach(8);
servo2.attach(9);
servo3.attach(10);
}
void loop() {
int val = analogRead(PIN_PHOTO_SENSOR);
Serial.println(val);
if (val > 100 ){
digitalWrite(YELLOW1, HIGH);
servo1.write(90);
delay(5000);
digitalWrite(YELLOW1, LOW);
servo1.write(0);
}
val = analogRead(PIN_PHOTO_SENSOR1);
Serial.println(val);
if (val > 100 ){
digitalWrite(YELLOW2, HIGH);
servo2.write(90);
delay(5000);
digitalWrite(YELLOW2, LOW);
servo2.write(0);
}
val = analogRead(PIN_PHOTO_SENSOR2);
Serial.println(val);
if (val > 100 ){
digitalWrite(YELLOW3, HIGH);
servo3.write(90);
delay(5000);
digitalWrite(YELLOW3, LOW);
servo3.write(0);
}}
void yield() {
int val = analogRead(PIN_PHOTO_SENSOR);
Serial.println(val);
if (val > 100 ){
digitalWrite(YELLOW1, HIGH);
servo1.write(90);
delay(5000);
digitalWrite(YELLOW1, LOW);
servo1.write(0);
}
val = analogRead(PIN_PHOTO_SENSOR1);
Serial.println(val);
if (val > 100 ){
digitalWrite(YELLOW2, HIGH);
servo2.write(90);
delay(5000);
digitalWrite(YELLOW2, LOW);
servo2.write(0);
}
val = analogRead(PIN_PHOTO_SENSOR2);
Serial.println(val);
if (val > 100 ){
digitalWrite(YELLOW3, HIGH);
servo3.write(90);
delay(5000);
digitalWrite(YELLOW3, LOW);
servo3.write(0);
}}
Вот скетч:
#include <Servo.h>
#define YELLOW1 2
#define YELLOW2 3
#define YELLOW3 4
#define PIN_PHOTO_SENSOR A0
#define PIN_PHOTO_SENSOR1 A1
#define PIN_PHOTO_SENSOR2 A2
Servo servo1;
Servo servo2;
Servo servo3;
void setup() {
Serial.begin(9600);
pinMode(PIN_PHOTO_SENSOR, INPUT);
pinMode(PIN_PHOTO_SENSOR2, INPUT);
pinMode(PIN_PHOTO_SENSOR1, INPUT);
pinMode(YELLOW1, OUTPUT);
pinMode(YELLOW2, OUTPUT);
pinMode(YELLOW3, OUTPUT);
servo1.attach(8);
servo2.attach(9);
servo3.attach(10);
}
void loop() {
int val = analogRead(PIN_PHOTO_SENSOR);
Serial.println(val);
if (val > 100 ){
digitalWrite(YELLOW1, HIGH);
servo1.write(90);
delay(5000);
digitalWrite(YELLOW1, LOW);
servo1.write(0);
}
val = analogRead(PIN_PHOTO_SENSOR1);
Serial.println(val);
if (val > 100 ){
digitalWrite(YELLOW2, HIGH);
servo2.write(90);
delay(5000);
digitalWrite(YELLOW2, LOW);
servo2.write(0);
}
val = analogRead(PIN_PHOTO_SENSOR2);
Serial.println(val);
if (val > 100 ){
digitalWrite(YELLOW3, HIGH);
servo3.write(90);
delay(5000);
digitalWrite(YELLOW3, LOW);
servo3.write(0);
}}
void yield() {
int val = analogRead(PIN_PHOTO_SENSOR);
Serial.println(val);
if (val > 100 ){
digitalWrite(YELLOW1, HIGH);
servo1.write(90);
delay(5000);
digitalWrite(YELLOW1, LOW);
servo1.write(0);
}
val = analogRead(PIN_PHOTO_SENSOR1);
Serial.println(val);
if (val > 100 ){
digitalWrite(YELLOW2, HIGH);
servo2.write(90);
delay(5000);
digitalWrite(YELLOW2, LOW);
servo2.write(0);
}
val = analogRead(PIN_PHOTO_SENSOR2);
Serial.println(val);
if (val > 100 ){
digitalWrite(YELLOW3, HIGH);
servo3.write(90);
delay(5000);
digitalWrite(YELLOW3, LOW);
servo3.write(0);
}}