11-06-2017, 11:15
chciałbym aby program nie zatrzymywał się przy robieniu kawy od np lewej strony, ale aby mógł też załączyć program od drugiej strony, aby nie trzeba było czekać na koniec programu pierwszego żeby załączyć drugi.
Kod:
void setup() {
pinMode(8, OUTPUT);
pinMode(7, OUTPUT);
digitalWrite(8, LOW);
digitalWrite(7, LOW);
pinMode(3, INPUT_PULLUP);
pinMode(6, INPUT_PULLUP);
pinMode(5, INPUT_PULLUP);
pinMode(4, INPUT_PULLUP);
pinMode(2, INPUT_PULLUP);
pinMode(9, INPUT_PULLUP);
pinMode(10, INPUT_PULLUP);
pinMode(11, INPUT_PULLUP);
pinMode(12, INPUT_PULLUP);
pinMode(13, INPUT_PULLUP);
}
void loop() {
if (digitalRead(12) == LOW) {
if (digitalRead(3) == LOW) {
digitalWrite(8, HIGH);
delay(10000); // jedna kawa prawa strona
digitalWrite(8, LOW);
}
if (digitalRead(5) == LOW) {
digitalWrite(8, HIGH);
delay(20000); // dwie kawy prawa strona
digitalWrite(8, LOW);
}
if (digitalRead(9) == LOW) {
digitalWrite(8, HIGH); //manual prawa
} else {
digitalWrite(8, LOW);
}
}
if (digitalRead(13) ==LOW) {
if (digitalRead(6) == LOW) {
digitalWrite(7, HIGH);
delay(10000); // jedna kawa lewa strona
digitalWrite(7, LOW);
}
if (digitalRead(4) == LOW) {
digitalWrite(7, HIGH);
delay(20000); // dwie kawy lewa strona
digitalWrite(7, LOW);
}
if (digitalRead(10) == LOW) {
digitalWrite(7, HIGH); //manual
} else {
digitalWrite(7, LOW);
}
}
while (digitalRead(2) == LOW) {
digitalWrite(7, HIGH);
delay(250);
digitalWrite(7, LOW);
delay(250);
}
while (digitalRead(11) == LOW) {
digitalWrite(8, HIGH);
delay(250);
digitalWrite(8, LOW);
delay(250);
}
}