www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Decoder für PT2240B?


Autor: Christoph (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich habe eine Fernbedieunung die einen PT2240B als Encoder eingebaut 
hat.

Ich möchte diese Fernbedienung in eine Anwendung einbauen, allerdings 
finde ich im Internet keine Infos was für einen Decoder für den PT2240B 
brauche.

Vielleicht kann mir von euch wer helfen?


mfg
Christoph

Autor: Düsentrieb (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
evtl pt2272

Autor: Christoph (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
wie sicher bist du dir da das der passen könnte??

ich lese leider aus dem Datenblatt nicht heraus welcher da passt!

mfg

Autor: Christoph (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
kann mir keiner helfen??

der pt2240b hat ja eine fixe codierung,  der decoder PT2272 hat aber so 
einen Dip Schalter zum einstellen, wie soll das gehn?

Autor: Düsentrieb (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
sicher? gar nicht.
eigentlich gehört zum pt2272 der pt2262 .
sowas hab ich , zb in fernb. steckdosen, 3stk + sender : 9,90 bei Obi :)

wie kommst gerade auf den pt2240?

Autor: Christoph (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hab da sehr kleine Fernbedienungen, die kann ich selbst nicht bauen, 
wiel sie so klein sind und weil das zu teuer währe.


die haben eben diesen IC drin.

Ich kenn mich da nicht ganz aus da die Codierung bei dem nicht über DIP 
Schalter läuft sondern fix einprogrammiert ist.

Man müsste die einzlnen Sender also an jeden Decoder anlernen können. 
Beim PT2272 muss man aber die DIP Schalter verwenden um die Codierung 
einzustellen, deshalb glaub ich nicht das es funktionieren könnte....

Autor: Christoph (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
kann mir keiner helfen??

Autor: Christoph (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
kennt sich damit echt keiner aus???

Autor: Bernd Hallinger (bhallinger) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Laut Homepage weiß das nicht mal der Hersteller :=)

Es gibt Encode da werden Decoder angegeben. Aber beim 2240 eben nicht.

Das heißt dann wohl selber auswerten :=((

Autor: Christoph (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das hab ich mir schon fast gedacht, hab gesehen das im Datenblatt keiner 
angegeben ist...

hab im Internet gefunden das manche das mit einem PIC 12F629 machen.
Hat wer von euch eine Idee wie das funktionieren könnte?

mfg

Autor: Bernd Hallinger (bhallinger) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Naja das RF Signal demodulieren und dann den Datenstrom über einen 
Portpin einlesen.....
Das sollte mit quasi jedem uC gehen.

Problem ist, dass das Protocoll unbekannt ist. Man müsste es versuchen 
durch mitlesen zu ermitteln. Wenns ein einfaches Protocol ist, dann 
könnte das noch gehen.

Event nicht am Empfänger probieren sondern erst mal direkt am 
Sendeausgang des Encoders. Ich würd halt mal mit nem Speicheroszi 
schauen was rauskommt.

Autor: Christoph (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hab hier noch ein anderes Datenblatt gefunden da steht glaub ich drin 
wie die Codierung funktioniert.

http://www.princeton.com.tw/downloadprocess/downlo...

Komm bei dem ganzen leider nicht weiter und hoffe immer noch das mir wer 
helfen kann!

Autor: Bernd Hallinger (bhallinger) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo

Also eigentlich scheint der Code nicht so komplex zu sein.
Jedes Bit begint mit einer steigenden Flanke. Dann muss man die Zeit bis 
zur fallenden Flanke messen. Und am besten auch die Zeit bis zur 
nächsten steigenden Flanke.

Kommt die fallende Flanke nach 1/3 der Zeit bis zur nächsten steigenden 
Flanke, dann ist es eine 0.

Kommt die fallende Flanke erst nach 2/3 er Zeit dann ist es eine 1.

Der einfach heit halber könnte man auch einfach schauen wie der Pegel 
nach einer halben Bitzeit ist.
Ist er 0 =>. Ist  der Pegel da High => 1

Das speichert man sich weg. Dann das nächste Bit.

Wenn alle Bits empfangen sind, schaut man ob es die richtige Adresse 
war. Wenn ja wertet man die Daten aus.

Kommt während der Übertragung für eine Weile keine steigende Flanke, 
dann bricht man eben ab.

Autor: Chriz X. (tc-maxx)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

der Thread ist zwar schon älter aber er passt zu meinem Problem.

Ich habe hier ein paar Funkfernbedienung mit diesem PT2040B (SOIC8).

Der PIC16 auf der Empfängerplatine ist defekt.
Nun muss ich diesen Controller gegen einen Atmel austauschen.

Ich habe direkt am DOUT vom PT2040B (Pin3) das Codeword im Anhang 
aufgenommen.

High im logisch-0: 0.37ms ( 1/4 High und 3/4 Low)
High im logisch-1: 1.08ms ( 3/4 High und 1/4 Low)
Bit-Zeit ( 1Bit ): 1.45ms
                   ======

Low im Sync-Bit  : 11ms
Codeword A0..SYNC: 47ms

Durch Toleranzen im Oszillatorwiderstand weichen die Zeiten bei jeder 
Fernbedienung etwas ab.

Ich bin etwas eingerostet, da meine Basteleien mit µC schon ein paar 
Jahre zurück liegen.

Ich hoffe ihr könnt mir etwas unter die Arme greifen :)
Wie lese ich das Codeword am günstigsten ein?

Meine Überlegungen waren zwei Timer, ein Timer um den ISR bei High am 
Eingang T0 auszulösen und den anderen Timer um die Zeit zu messen?

In meiner Testumgebung verwende ich einen Atmega32

VG
max

Autor: µC-Bastler (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Chriz X. schrieb:
> Wie lese ich das Codeword am günstigsten ein?

Trigger auf steigende Flanke (on Change ISR), Timer mit 2/4 der Bitzeit 
starten und mit Timerablauf den Signalpegel testen.

Autor: Joachim Börke (joachimb)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das Pulsmuster des PT2240 entspricht dem des PT2262, wobei die Bits des 
PT2262 eine andere Bedeutung haben.
Damit ist das Pulsmuster zu dem üblicher Baumarkt-Funksteckdosen 
kompatibel. Deshalb sollte es gut möglich sein, eine der hier im Forum 
veröffentlichten Software-Funksteckdosen-Empfangslösungen anzupassen.

Gruß
JoachimB

Autor: Chriz X. (tc-maxx)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke für eure Antworten !

@joachimb:
Eine Software-Funksteckdosen-Empfangslösung habe ich hier nicht 
gefunden, nur Lösungen für Sender. Kannst du mir einen Link geben?

@µC-Bastler:
So habe ich das jetzt umgesetzt, es funktioniert auch grundlegend!
Zuvor müsste ich aber erst das SYNC-Bit finden bzw. den langen LOW-Pegel 
danach (~11ms). Wie könnte ich das am besten realisieren?

VG max

Autor: Chriz X. (tc-maxx)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
ich habe es hinbekommen.

Das Bitword wird erkannt und die Datenbits verarbeitet.
Der Controller soll mal erkennen, wie lange eine Taste auf der 
Fernbedienung gedrückt wurde und dann entsprechend reagieren...

Ein letztes Problem habe ich allerdings noch:

Wenn man die Taste auf der Fernbedienung loslässt springt mein Programm 
manchmal nicht mehr in die Check-Routine wo die Adresse geprüft wird
und die zu schaltende LED bzw. die Ausgabe auf dem Display bleibt an.

Ich finde den Fehler einfach nicht, der Sourcecode befindet sich im 
Anhang.

VG max

Autor: Altinfo (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.