Forum: Mikrocontroller und Digitale Elektronik IR Empfänger mit AVR programmiert? HILFE!


von Thomas R. (thomas2805)


Lesenswert?

Hallo,

Ich habe ein Problem und hoffe, hier jemanden finden zu können, der mir 
dabei helfen könnte. Ich sollte für die Schule ein Programm mit AVR 
entwickeln, das die Signale einer Fernbedienung empfängt und diese 
verarbeitet. Unser ATmega16 Mikrokontroller befindet sich auf einem 
Board mit USB Schnittstelle, LEDs, Tastern und IR-Sender und Empfänger, 
die mittels einem AVR Programm angesteuert werden können. Da ich und 
meine Projektpartner leider keinen Plan von AVR Programmierung haben 
(Rest der Klasse ebenfalls) und unser Lehrer uns nicht helfen kann, 
bitte ich hier um Hilfe.
Wir haben schon damit begonnen, die Signale einer Beamer Fernbedienung 
zu analysieren und definieren, doch das Signal ist sehr kurios:

const char signal_menue[67]={324, 158, 22, 61, 22, 61, 22, 22, 22, 22, 
22, 61, 22, 65, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 
22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 58, 22, 61, 22, 58, 22, 22, 
22, 22, 22, 22, 22, 61, 22, 61, 22, 22, 22, 22, 22, 22, 22, 61, 22, 58, 
22, 61, 22};

Keine Ahnung für was diese Programmzeile gut ist, aber wir haben sie von 
einem Schüler aus der Informatikklasse, der uns versicherte, das 
Grungprinzip würde stimmen.

HILFE!

mfg

von Klaus2 (Gast)


Lesenswert?

"Keine Ahnung für was diese Programmzeile gut ist"

-> Na, dann gute Nacht!

Sollen wir das jetzt für euch machen, oder was?

Ließ dir erstmal was über den Aufbau von IR Signalen durch und geh mal 
mit der FB an ein Oszi - dann beginnst du EVTL zu verstehen.

Klaus.

von Thomas R. (thomas2805)


Lesenswert?

Wir haben das Signal bereits mit einem Oszilloskop aufgenommen, doch wir 
wissen nicht wie wir es in AVR definieren können, um es mit einem am 
Eingang einkommenden Signal zu vergleichen.

von Tim T. (tim_taylor) Benutzerseite


Lesenswert?

Warum glaubt irgendwer an eurer Schule das ihr dazu in der Lage währt?

von Thomas R. (thomas2805)


Lesenswert?

Der Lehrer denkt es wäre einfach! Aber bitte Hilfe

von Peter D. (peda)


Lesenswert?

Thomas R. schrieb:
> Wir haben das Signal bereits mit einem Oszilloskop aufgenommen

Dann gibts genau 2 Möglichkeiten:

1. Ihr kriegt raus, wie das Signal codiert ist.

2. Ihr nehmt ne FB, die einen gut bekannten Code sendet, z.B. RC5.
Dann findet ihr auch Software dazu.


Peter

von Oliver (Gast)


Lesenswert?

Österreich? HTL?

Egal, IR-Theorie gibt es hier:

http://www.sbprojects.com/knowledge/ir/ir.htm


>const char signal_menue[67]={324...

enthält die Längen der Impulse des Telegramms.

Oliver

von Thomas R. (thomas2805)


Lesenswert?

Österreich? HTL?

Genau xD

von Rolf I. (for_ro)


Lesenswert?

Thomas R. schrieb:

> const char signal_menue[67]={324, 158, 22, 61, 22, 61, 22, 22, 22, 22,
> 22, 61, 22, 65, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
> 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 58, 22, 61, 22, 58, 22, 22,
> 22, 22, 22, 22, 22, 61, 22, 61, 22, 22, 22, 22, 22, 22, 22, 61, 22, 58,
> 22, 61, 22};

Was du hier siehst sind die Flankenwechsel Zeiten für einen Code des 
Extended NEC Protokolls. Die Größe der Werte hängt von der Scan 
Geschwindigkeit ab. Sie sind etwa 4 mal so groß wie die tatsächlichen 
ms. Details dazu findest du auf der oben erwähnten Webseite.
Der übertragene Code ist
11001100 00000000 00111000 11000111

Gruß

Rolf

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.