Hallo,
ich habe 2 arduino UNO. Der eine sendet einen 500µsec Impuls auf 38 kHz. Alles i.O.
Am anderen ist ein IR Sensor TSOP4838 auf PIN 2 angeschlossen.
Im LogicAnalyser sehe ich den abgehenden Impuls(D0) und ein paar Microsekunden später am Sensor-Data(D1) den ankommenden Impuls.
Es gelingt mir nicht den Datenimpuls auf PIN 2 abzufragen. Es sagt mir immer, dass ein Signal vorhanden ist. Es spielt keine Rolle, ob es ein Signal wirklich gibt oder nicht.
Versuche:
- pinMode(IR_EMPFAENGER_PIN, INPUT_PULLUP); geht nicht
- Pullup Widerstand 4,7 kOhm zwischen PIN 2 und GND, geht nicht
- Pullup Widerstand 4,7 kOhm zwischen PIN 2 und +5 V, geht nicht
Was mache ich falsch ?
Hier noch meine Empfängercode.
Auch die Variante mit PIND & (1<<PD2)) geht nicht.
#define IR_EMPFAENGER_PIN 2
void setup() {
Serial.begin(115200);
delay(100);
pinMode(IR_EMPFAENGER_PIN, INPUT);
Serial.println("IR Empfänger - Setup");
}
void loop() {
//if(!(PIND & (1<<PD2))){
if (digitalRead(IR_EMPFAENGER_PIN) == true) {
Serial.println("IR Signal erhalten:");
} else {
Serial.println("Kein");
}
}
