Moin zusammen,
ich versuche mich gerade an etwas 'simplen'. Ich habe 9 Lichtsensoren, die einen Ton erzeugen lassen sollen, wenn es dunkel wird (also mit dem Finger bzw der Hand drauf tippt).
Ich habe mich an dieser Webseite orientiert und wiefolgt verlötet
Auf dem Breadboard hat es wunderbar funktioniert, mit einer LED, aber jetzt habe ich bestimmt irgendwo einen Denk- bzw. Lötfehler.
#define LDR0 11
#define LDR1 9
#define LDR2 8
#define LDR3 7
#define LDR4 6
#define LDR5 5
#define LDR6 4
#define LDR7 3
#define LDR8 2
int LDR_value0;
int LDR_value1;
int LDR_value2;
int LDR_value3;
int LDR_value4;
int LDR_value5;
int LDR_value6;
int LDR_value7;
int LDR_value8;
#define buzzer 10
void setup() {
Serial.begin(9600);
pinMode(LDR0, INPUT);
pinMode(LDR1, INPUT);
pinMode(LDR2, INPUT);
pinMode(LDR3, INPUT);
pinMode(LDR4, INPUT);
pinMode(LDR5, INPUT);
pinMode(LDR6, INPUT);
pinMode(LDR7, INPUT);
pinMode(LDR8, INPUT);
pinMode(buzzer, OUTPUT);
}
void loop() {
LDR_value0 = analogRead(LDR0);
LDR_value1 = analogRead(LDR1);
LDR_value2 = analogRead(LDR2);
LDR_value3 = analogRead(LDR3);
LDR_value4 = analogRead(LDR4);
LDR_value5 = analogRead(LDR5);
LDR_value6 = analogRead(LDR6);
LDR_value7 = analogRead(LDR7);
LDR_value8 = analogRead(LDR8);
Serial.println(LDR_value0);
Serial.println(LDR_value1);
Serial.println(LDR_value2);
Serial.println(LDR_value3); // put your main code here, to run repeatedly:
Serial.println(LDR_value4);
Serial.println(LDR_value5);
Serial.println(LDR_value6);
Serial.println(LDR_value7);
Serial.println(LDR_value8);
if (LDR_value0 < 100) // Wenn der Schwellenwert 512 überschritten wird, soll die LED leuchten
{
tone(buzzer, 400,1000);
Serial.println("LED an");
}
// ansonsten...
else {
noTone(buzzer);
Serial.println("LED aus");
}
if (LDR_value1 < 100) // Wenn der Schwellenwert 512 überschritten wird, soll die LED leuchten
{
tone(buzzer, 400,1000);
Serial.println("LED an");
}
// ansonsten...
else {
noTone(buzzer);
Serial.println("LED aus");
}
if (LDR_value2 < 100) // Wenn der Schwellenwert 512 überschritten wird, soll die LED leuchten
{
tone(buzzer, 400,1000);
Serial.println("LED an");
}
// ansonsten...
else {
noTone(buzzer);
Serial.println("LED aus");
}
if (LDR_value4 < 100) // Wenn der Schwellenwert 512 überschritten wird, soll die LED leuchten
{
tone(buzzer, 400,1000);
Serial.println("LED an");
}
// ansonsten...
else {
noTone(buzzer);
Serial.println("LED aus");
}
if (LDR_value5 < 100) // Wenn der Schwellenwert 512 überschritten wird, soll die LED leuchten
{
tone(buzzer, 400,1000);
Serial.println("LED an");
}
// ansonsten...
else {
noTone(buzzer);
Serial.println("LED aus");
}
if (LDR_value6 < 100) // Wenn der Schwellenwert 512 überschritten wird, soll die LED leuchten
{
tone(buzzer, 400,1000);
Serial.println("LED an");
}
// ansonsten...
else {
noTone(buzzer);
Serial.println("LED aus");
}
if (LDR_value7 < 100) // Wenn der Schwellenwert 512 überschritten wird, soll die LED leuchten
{
tone(buzzer, 400);
Serial.println("LED an");
}
// ansonsten...
else {
noTone(buzzer);
Serial.println("LED aus");
}
if (LDR_value8 < 100) // Wenn der Schwellenwert 512 überschritten wird, soll die LED leuchten
{
tone(buzzer, 400);
Serial.println("LED an");
}
// ansonsten...
else {
noTone(buzzer);
Serial.println("LED aus");
}
}
Wenn die einfache Funktion gegeben ist, werde ich es noch in arrays und switch case umwandeln bzw eine ISM integrieren UND auf delays verzichten
Ich bekomme aber nur folgende Werte im SerMo ausgegeben:
15:28:06.843 -> LED aus
15:28:06.843 -> LED aus
15:28:06.885 -> LED aus
15:28:06.963 -> LED aus
15:28:07.010 -> LED aus
15:28:07.042 -> LED aus
15:28:07.086 -> LED aus
15:28:07.168 -> LED aus
15:28:07.200 -> 294
15:28:07.200 -> 282
15:28:07.200 -> 295
15:28:07.232 -> 298
15:28:07.232 -> 300
15:28:07.232 -> 309
15:28:07.232 -> 308
15:28:07.232 -> 300
15:28:07.232 -> 299
15:28:07.276 -> LED aus
15:28:07.276 -> LED aus
15:28:07.323 -> LED aus
15:28:07.369 -> LED aus
15:28:07.401 -> LED aus
15:28:07.442 -> LED aus
15:28:07.525 -> LED aus
15:28:07.571 -> LED aus
15:28:07.603 -> 302
15:28:07.603 -> 289
15:28:07.603 -> 302
15:28:07.635 -> 304
15:28:07.635 -> 304
15:28:07.635 -> 316
15:28:07.635 -> 315
15:28:07.635 -> 306
15:28:07.635 -> 303
15:28:07.673 -> LED aus
15:28:07.673 -> LED aus
15:28:07.718 -> LED aus
15:28:07.750 -> LED aus
15:28:07.795 -> LED aus
15:28:07.874 -> LED aus
15:28:07.922 -> LED aus
15:28:07.954 -> LED aus
15:28:07.997 -> 299
15:28:08.029 -> 283
15:28:08.029 -> 295
15:28:08.029 -> 300
15:28:08.029 -> 302
15:28:08.029 -> 302
15:28:08.029 -> 302
15:28:08.061 -> 297
15:28:08.061 -> 298
15:28:08.061 -> LED aus
15:28:08.061 -> LED aus
15:28:08.099 -> LED aus
15:28:08.185 -> LED aus
15:28:08.231 -> LED aus
15:28:08.262 -> LED aus
15:28:08.300 -> LED aus
15:28:08.385 -> LED aus
15:28:08.416 -> 291
15:28:08.416 -> 274
15:28:08.416 -> 285
15:28:08.448 -> 292
15:28:08.448 -> 296
15:28:08.448 -> 288
15:28:08.448 -> 288
15:28:08.448 -> 287
15:28:08.448 -> 290
Die Werte bleiben immer in diesem Bereich und verändern sich weder bei Helligkeit noch bei Dunkelheit.


