IR-Empfänger

Moderator Persönliche Seite #2581510
Lesenswert?

BerndB schrieb:
> mein IR-Empfänger mit TSOP4838 und ATmega8 funktioniert leider nicht
> besonders zuverlässig, weil Neonlicht hier störend einwirkt.

Ein paar Fragen:

- Bist Du sicher, dass es am Neonlicht liegt? Wenn ja, warum?
- Ist an der Spannungsversorgung des TSOP ein Tiefpassfilter
  vorgeschaltet?
- Mit welcher Modulationsfrequenz arbeitet der Sender?
- Welchen Abstand haben Sender und Empfänger?
- Welche Software verwendest Du zum Decodieren?
- Um welches IR-Protokoll handelt es sich?
- Pollst Du den Empfänger oder arbeitest Du mit flankengesteuertem
  Interrupt?

Gruß,

Frank
Gast #2581530
Lesenswert?

Hallo Frank,

vielen Dank für deine Antwort.

Wenn ich an meinem Arbeitsplatz über meiner NEC-Protokoll Fernbedienung
eine Endlosschleife in meinem Controller laufen lasse habe ich keine 
Probleme.
Schalte ich dann das Licht ein, wird meine Rotine unterbrochen. Wenn ich 
sie
dann erneut starte, das Bürolicht ist dabei an, läuft sie weiter, wird 
aber irgendwann wieder unterbrochen. Es wird besser wenn ich Papier über 
die IR-Diode lege.
Ein Tiefpass-Filter wird verwendet.
Modulationsfrequenz: 38kHz

Decodierung per PIN-Abfrage und Timer via Assembler.

Bernd
Moderator Persönliche Seite #2581666
Lesenswert?

BerndB schrieb:

> Schalte ich dann das Licht ein, wird meine Rotine unterbrochen. Wenn ich
> sie

Was heisst, "die Routine wird unterbrochen"? Ich kann mir ja vorstellen, 
dass beim Einschalten des Lichts mal ein NEC-Frame kaputtgeht, aber 
danach sollte das Dekodieren ja wieder funktionieren, oder?

> dann erneut starte, das Bürolicht ist dabei an, läuft sie weiter, wird
> aber irgendwann wieder unterbrochen.

Du musst den Dekoder neu starten, damit er weitere Frames lesen kann?

Kann es sein, dass Du keine Fehlerbehandlung im Programm hast? Du 
solltest dafür sorgen, dass Deine Statemachine (ich hoffe, Du hast eine) 
sich automatisch zurücksetzt, wenn ein Übertragungsfehler auftritt. Das 
kann zum Beispiel passieren, wenn Du für x Millisekunden kein Signal 
mehr empfängst, obwohl Du eigentlich noch ein Bit erwartest. Setze in 
diesem Fall Deine Statemachine wieder auf die Ausgangswerte.

> Es wird besser wenn ich Papier über die IR-Diode lege.

Mit Übertragungsfehlern musst Du immer rechnen. Dein Dekoder sollte dies 
berücksichtigen. Das ist auch kein Problem: Stellt der Mensch fest, dass 
das Empfänger-Gerät nicht reagiert, drückt er dieselbe Taste auf der 
Fernbedienung nochmal. Das ist das normale Verhalten.

> Ein Tiefpass-Filter wird verwendet.
> Modulationsfrequenz: 38kHz

Welche Entfernung? 5-10 Meter sollten immer gehen.

> Decodierung per PIN-Abfrage und Timer via Assembler.

Schau Dir mal zwecks Studium IRMP an. Vielleicht kannst Du Dir da 
was abgucken. Ist aber in C geschrieben.

Gruß,

Frank

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren