13-12-2020, 05:33
Witam jestem początkujący w tej dziedzinie. Napisałem kod dla schodów wzorując się filmikiem z YouTube ale nie mogę go zamknąć. Co jest nie tak. Zarys jest taki że mam arduino uno dwa czuiniki pir i 16 kanałowy przekaźnik. Ma się to włączać a później gasić czasy jeszcze do ustawienia więc się tym nie sugerowac jaki błąd popełniam w tym kodzie.
void setup() {
pinMode(A0, OUTPUT); //dioda jako wyjscie
pinMode(A1, OUTPUT); //dioda jako wyjscie
pinMode(A2, OUTPUT); //dioda jako wyjscie
pinMode(A3, OUTPUT); //dioda jako wyjscie
pinMode(A4, OUTPUT); //dioda jako wyjscie
pinMode(A5, OUTPUT); //dioda jako wyjscie
pinMode(1, OUTPUT); //dioda jako wyjscie
pinMode(2, OUTPUT); //dioda jako wyjscie
pinMode(3, OUTPUT); //dioda jako wyjscie
pinMode(4, OUTPUT); //dioda jako wyjscie
pinMode(5, OUTPUT); //dioda jako wyjscie
pinMode(6, OUTPUT); //dioda jako wyjscie
pinMode(7, OUTPUT); //dioda jako wyjscie
pinMode(8, OUTPUT); //dioda jako wyjscie
pinMode(9, OUTPUT); //dioda jako wyjscie
pinMode(12, INPUT_PULLUP); //wejscie dół
pinMode(13, INPUT_PULLUP); //wejscie góra
}
void loop() {
if (digitalRead(12) == HIGH){
digitalWrite(A0, LOW); //wlacz diode
Serial.print ("diody wlaczone 12");
delay (500);
digitalWrite(A1, LOW); //wlacz diode
delay (600);
digitalWrite(A2, LOW); //wlacz diode
delay (700);
digitalWrite(A3, LOW); //wlacz diode
delay (800);
digitalWrite(A4, LOW); //wlacz diode
delay (900);
digitalWrite(A5, LOW); //wlacz diode
delay (1000);
digitalWrite(1, LOW); //wlacz diode
delay (1100);
digitalWrite(2, LOW); //wlacz diode
delay (1200);
digitalWrite(3, LOW); //wlacz diode
delay (1400);
digitalWrite(4, LOW); //wlacz diode
delay (1500);
digitalWrite(5, LOW); //wlacz diode
delay (1600);
digitalWrite(6, LOW); //wlacz diode
delay (1800);
digitalWrite(7, LOW); //wlacz diode
delay (1900);
digitalWrite(8, LOW); //wlacz diode
delay (2000);
digitalWrite(9, LOW); //wlacz diode
Serial.print ("diody wlaczone 12");
delay (400);
digitalWrite(A1, HIGH); //wylacz diode
delay (500);
digitalWrite(A2, HIGH); //wylacz diode
delay (500);
digitalWrite(A3, HIGH); //wylacz diode
delay (500);
digitalWrite(A4, HIGH); //wylacz diode
delay (500);
digitalWrite(A5, HIGH); //wylacz diode
delay (500);
digitalWrite(1, HIGH); //wylacz diode
delay (500);
digitalWrite(2, HIGH); //wylacz diode
delay (500);
digitalWrite(3, HIGH); //wylacz diode
delay (500);
digitalWrite(4, HIGH); //wylacz diode
delay (500);
digitalWrite(5, HIGH); //wylacz diode
delay (500);
digitalWrite(6, HIGH); //wylacz diode
delay (500);
digitalWrite(7, HIGH); //wylacz diode
delay (500);
digitalWrite(8, HIGH); //wylacz diode
delay (500);
digitalWrite(9, HIGH); //wylacz diode
}
if (digitalRead(13) == HIGH){
digitalWrite(9, LOW); //wlacz diode
Serial.print ("diody wlaczone 13");
delay (500);
digitalWrite(8, LOW); //wlacz diode
delay (600);
digitalWrite(7, LOW); //wlacz diode
delay (700);
digitalWrite(6, LOW); //wlacz diode
delay (800);
digitalWrite(5, LOW); //wlacz diode
delay (900);
digitalWrite(4, LOW); //wlacz diode
delay (1000);
digitalWrite(3, LOW); //wlacz diode
delay (1100);
digitalWrite(2, LOW); //wlacz diode
delay (1200);
digitalWrite(1, LOW); //wlacz diode
delay (1400);
digitalWrite(A5, LOW); //wlacz diode
delay (1500);
digitalWrite(A4, LOW); //wlacz diode
delay (1600);
digitalWrite(A3, LOW); //wlacz diode
delay (1800);
digitalWrite(A2, LOW); //wlacz diode
delay (1900);
digitalWrite(A1, LOW); //wlacz diode
delay (2000);
digitalWrite(A0, LOW); //wlacz diode
Serial.print ("diody wlaczone 13");
delay (400);
digitalWrite(9, HIGH); //wylacz diode
delay (500);
digitalWrite(8, HIGH); //wylacz diode
delay (500);
digitalWrite(7, HIGH); //wylacz diode
delay (500);
digitalWrite(6, HIGH); //wylacz diode
delay (500);
digitalWrite(5, HIGH); //wylacz diode
delay (500);
digitalWrite(4, HIGH); //wylacz diode
delay (500);
digitalWrite(3, HIGH); //wylacz diode
delay (500);
digitalWrite(2, HIGH); //wylacz diode
delay (500);
digitalWrite(1, HIGH); //wylacz diode
delay (500);
digitalWrite(A5, HIGH); //wylacz diode
delay (500);
digitalWrite(A4, HIGH); //wylacz diode
delay (500);
digitalWrite(A3, HIGH); //wylacz diode
delay (500);
digitalWrite(A2, HIGH); //wylacz diode
delay (500);
digitalWrite(A1, HIGH); //wylacz diode
delay (500);
digitalWrite(A0, HIGH); //wylacz diode
}
Za wszelką pomoc dziękuję
void setup() {
pinMode(A0, OUTPUT); //dioda jako wyjscie
pinMode(A1, OUTPUT); //dioda jako wyjscie
pinMode(A2, OUTPUT); //dioda jako wyjscie
pinMode(A3, OUTPUT); //dioda jako wyjscie
pinMode(A4, OUTPUT); //dioda jako wyjscie
pinMode(A5, OUTPUT); //dioda jako wyjscie
pinMode(1, OUTPUT); //dioda jako wyjscie
pinMode(2, OUTPUT); //dioda jako wyjscie
pinMode(3, OUTPUT); //dioda jako wyjscie
pinMode(4, OUTPUT); //dioda jako wyjscie
pinMode(5, OUTPUT); //dioda jako wyjscie
pinMode(6, OUTPUT); //dioda jako wyjscie
pinMode(7, OUTPUT); //dioda jako wyjscie
pinMode(8, OUTPUT); //dioda jako wyjscie
pinMode(9, OUTPUT); //dioda jako wyjscie
pinMode(12, INPUT_PULLUP); //wejscie dół
pinMode(13, INPUT_PULLUP); //wejscie góra
}
void loop() {
if (digitalRead(12) == HIGH){
digitalWrite(A0, LOW); //wlacz diode
Serial.print ("diody wlaczone 12");
delay (500);
digitalWrite(A1, LOW); //wlacz diode
delay (600);
digitalWrite(A2, LOW); //wlacz diode
delay (700);
digitalWrite(A3, LOW); //wlacz diode
delay (800);
digitalWrite(A4, LOW); //wlacz diode
delay (900);
digitalWrite(A5, LOW); //wlacz diode
delay (1000);
digitalWrite(1, LOW); //wlacz diode
delay (1100);
digitalWrite(2, LOW); //wlacz diode
delay (1200);
digitalWrite(3, LOW); //wlacz diode
delay (1400);
digitalWrite(4, LOW); //wlacz diode
delay (1500);
digitalWrite(5, LOW); //wlacz diode
delay (1600);
digitalWrite(6, LOW); //wlacz diode
delay (1800);
digitalWrite(7, LOW); //wlacz diode
delay (1900);
digitalWrite(8, LOW); //wlacz diode
delay (2000);
digitalWrite(9, LOW); //wlacz diode
Serial.print ("diody wlaczone 12");
delay (400);
digitalWrite(A1, HIGH); //wylacz diode
delay (500);
digitalWrite(A2, HIGH); //wylacz diode
delay (500);
digitalWrite(A3, HIGH); //wylacz diode
delay (500);
digitalWrite(A4, HIGH); //wylacz diode
delay (500);
digitalWrite(A5, HIGH); //wylacz diode
delay (500);
digitalWrite(1, HIGH); //wylacz diode
delay (500);
digitalWrite(2, HIGH); //wylacz diode
delay (500);
digitalWrite(3, HIGH); //wylacz diode
delay (500);
digitalWrite(4, HIGH); //wylacz diode
delay (500);
digitalWrite(5, HIGH); //wylacz diode
delay (500);
digitalWrite(6, HIGH); //wylacz diode
delay (500);
digitalWrite(7, HIGH); //wylacz diode
delay (500);
digitalWrite(8, HIGH); //wylacz diode
delay (500);
digitalWrite(9, HIGH); //wylacz diode
}
if (digitalRead(13) == HIGH){
digitalWrite(9, LOW); //wlacz diode
Serial.print ("diody wlaczone 13");
delay (500);
digitalWrite(8, LOW); //wlacz diode
delay (600);
digitalWrite(7, LOW); //wlacz diode
delay (700);
digitalWrite(6, LOW); //wlacz diode
delay (800);
digitalWrite(5, LOW); //wlacz diode
delay (900);
digitalWrite(4, LOW); //wlacz diode
delay (1000);
digitalWrite(3, LOW); //wlacz diode
delay (1100);
digitalWrite(2, LOW); //wlacz diode
delay (1200);
digitalWrite(1, LOW); //wlacz diode
delay (1400);
digitalWrite(A5, LOW); //wlacz diode
delay (1500);
digitalWrite(A4, LOW); //wlacz diode
delay (1600);
digitalWrite(A3, LOW); //wlacz diode
delay (1800);
digitalWrite(A2, LOW); //wlacz diode
delay (1900);
digitalWrite(A1, LOW); //wlacz diode
delay (2000);
digitalWrite(A0, LOW); //wlacz diode
Serial.print ("diody wlaczone 13");
delay (400);
digitalWrite(9, HIGH); //wylacz diode
delay (500);
digitalWrite(8, HIGH); //wylacz diode
delay (500);
digitalWrite(7, HIGH); //wylacz diode
delay (500);
digitalWrite(6, HIGH); //wylacz diode
delay (500);
digitalWrite(5, HIGH); //wylacz diode
delay (500);
digitalWrite(4, HIGH); //wylacz diode
delay (500);
digitalWrite(3, HIGH); //wylacz diode
delay (500);
digitalWrite(2, HIGH); //wylacz diode
delay (500);
digitalWrite(1, HIGH); //wylacz diode
delay (500);
digitalWrite(A5, HIGH); //wylacz diode
delay (500);
digitalWrite(A4, HIGH); //wylacz diode
delay (500);
digitalWrite(A3, HIGH); //wylacz diode
delay (500);
digitalWrite(A2, HIGH); //wylacz diode
delay (500);
digitalWrite(A1, HIGH); //wylacz diode
delay (500);
digitalWrite(A0, HIGH); //wylacz diode
}
Za wszelką pomoc dziękuję