Arduino Codeschloss
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEipC_a47uMOCW-0MnnG2-8ywvPhP44Q_flyy6YO-iV4Y0wDcyZp3sDU06g5mcYGjQFaGRIAPYpsv7pCxUTZQKZokyviMf0PAcrR18PHDu_ZVJmjjtJkqJcxrZlDnRS1E1nyC4ENWzCEsqCy/s320/codeschloss_layout_Schaltplan.png) |
Schaltplan Codeschloss |
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiKEuFwgTN6ckRJIEoaPrLvUNPO4XbyInbLuLQ_woI6eD2oUNQvrpUTdgNQ46ZemqXhMBj1mhMOgmXRwkMLuDPhZimYBAmgq8N6ZMPlC0JuI9vgVW6JRuTAEPf1CnS8r4_hyFnX_ZZUYICz/s320/codeschloss_layout_Steckplatine.png) |
Steckplatine Codeschloss |
int led_rot = 4;
int led_gruen = 5;
int sw1 = 2;
int sw2 = 3;
int buzzer = 8;
int x,y,code1,code2,resetTimer = 0;
void setup() {
pinMode(led_rot, OUTPUT);
pinMode(led_gruen, OUTPUT);
pinMode(buzzer, OUTPUT);
pinMode(sw1, INPUT);
digitalWrite(sw1, HIGH);
pinMode(sw2, INPUT);
digitalWrite(sw2, HIGH);
clr_Code();
}
void loop() {
//Code 1 = 5
if (!digitalRead(sw1)) {
delay(50);
if(!digitalRead(sw1)) {
blink();
x++;
if (x == 5) {
code1 = true;
} else code1 = false;
do {
}while(!digitalRead(sw1));
}
}
//Code 2 = 3
if(!digitalRead(sw2)) {
delay(50);
if(!digitalRead(sw2)) {
blink();
y++;
if(y == 3) {
code2 = true;
} else code2 = false;
do{
delay(50);
resetTimer++;
if(resetTimer>50) {
toggle_Flash();
clr_Code();
break;
}
}while(!digitalRead(sw2));
resetTimer = 0;
}
}
if(code1 == true && code2 == true) {
digitalWrite(led_gruen, HIGH);
clr_Code();
delay(5000);
digitalWrite(led_gruen, LOW);
} else {
digitalWrite(led_gruen, LOW);
}
}
void blink(void) {
digitalWrite(led_rot, HIGH);
tone(buzzer, 500, 150);
delay(200);
digitalWrite(led_rot, LOW);
}
void toggle_Flash(void) {
int tog = 0;
for(x=0;x<6;x++) {
if(tog==0)tog=1;else tog=0;
digitalWrite(led_rot,tog);
tone(buzzer,500,250);
delay(300);
}
}
void clr_Code(void) {
x = 0;
y = 0;
code1 = 0;
code2 = 0;
resetTimer = 0;
}
ich verstehe die methode void toggle_Flash(void) nicht. Kann mir das jemand erklären?
AntwortenLöschenDieser Kommentar wurde vom Autor entfernt.
AntwortenLöschen