RC5 dekodierproblem

Gast #71977
Lesenswert?

Hallo!

Ich habe hier eine Philips Fernbedienung die ja bekannter Weise den RC5
Code verwendet.
Ich möchte gerne meinen µC über diese Fernbedienung steuern habe aber
ein Problem beim dekodieren des Signals. (Ich weiß nicht was ich
programmieren soll, das ich ein brauchbares Signal erhalte)

Ich habe leider keinen Interrupt mehr frei und am liebsten währe mir
auch wenn ich keinen Timer brauche - ist aber nicht möglich glaube
ich.
Ich werde wohl den Timer2 dafür nehmen müssen. (keine anderen mehr
frei)

Alle Sourcecodes die ich bis jetzt gefunden habe verstehe ich entweder
nicht so ganz oder ich kann sie nicht bei mir implementieren.

Ich verwende einen ATMEGA128 mit einem TSOP1738 Empfänger der momentan
auf PORTG Pin0 hängt.

Vielleicht kann mir jemand helfen.

DANKE im vorraus.

STEFAN
Gast #71978
Lesenswert?

Bisher habe ich mir folgenden Code ausgedacht.
Jedoch erhalte ich nur immer abwechselnd 0 und 1.

void irda(int status)  //wird ständig in einer Schleife aufgerufen
                       //und in der Variable status wird der
                       //aktuelle Status des Ports übergeben.
{


       if(status & 0x1)
       {
           irdanew = 1;
       }
       else
       {
           irdanew = 0;
       }

       if(irdaold != irdanew) //wenn sich der status geändert hat
       {

    if(irdanew == 1) //wenn der neue status 1 wäre
    {
      lcd_putsf("1"); //schreibt auf dem lcd 1 dazu
    }
    if(irdanew == 0) //wenn der neue status 0 wäre
    {
      lcd_putsf("0"); //schreibt auf dem lcd 0 dazu
    }
       }

       irdaold = irdanew;
}

vermutlich kann dies aus einem mir unbekannten Grund gar nicht
funktionieren.
#71979
Lesenswert?

Entweder Du sagst, was Du an den Codebeispiele nicht verstehst, oder Du
denkst Dir selber was aus.

Im letzteren Fall mußt Du Dir aber zuerst auch die Beschreibung des
RC5-Codes durchlesen. Dein Codebeispiel zeigt nämlich, daß Du das auf
keinen Fall getan haben kannst.


Peter
Gast #71980
Lesenswert?

Schade.
Ich habe mir schon gedacht, dass das nicht funktionieren kann.
--> Müll

Mit dem RC5 Code habe ich mich schon näher befasst.

Aber vielleicht kann mir jemand erklären wie ich den code in den µC
einlesen muss.
Gast #71982
Lesenswert?

Danke für den Link - aber die Seite kannte ich schon.
Das Beispiel in der Codesammlung habe ich auch schon durchgewälzt - ich
werde aber auch nicht schlau daraus.
(1. Problem ich finde nicht heraus mit welchem Clock gearbeitet wird)

Vielleicht könntest du mir genau erklären was ich programmieren muss.
Darüber währe ich dir sehr dankbar.

STEFAN

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