PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Manchester Code von einem PIN dekodieren / HMS100T



frank-wob
04.10.2012, 10:03
Hallo,

ich habe ein Problem bei dem ich nicht weiterkomme. Ich glaube schon langsam ich bin zu Blöd für Manchester.

Es geht um folgendes:
Ich habe einen Temperatursensor der über AM die Temperatur sendet. HMS100T von ELV.

Ich schaffe es nun mit meinem Empfänger grundsätzlich etwas von dem Sender zu empfangen. Nur schaffe ich es nicht die Daten auszuwerten. Ich habe im Internet eine Beschreibung gefunden, wonach die Daten ähnlich Manchester-Code übertragen. Der Unterschied soll sein das nach der Präambel eine Periode gewartet wird. Die Preable soll 36 Bits lang sein. Die Datenperiode 1000µS.

Der Empfänger gibt mit High/Low auf int0 eines Mega8 aus.

Ich zähle jetzt 36 mal den Pegelwandel nach 0. Warte 1 ms.
Dann starte ich Timer1 der alle 1000µS nachsieht welcher Pegel am Empfangspin anliegt. Die 0 oder 1 schreibe ich in einen String und gebe ihn per UART aus.
Aber der scheint schon nicht zu stimmen. Er ändert sich von Empfang zu Empfang sehr stark, obwohl der Temperaturwert eigentlich konstant sein müsste.

Nun meine Fragen:
1. Mache ich hier schon einen Grundsätzlichen Fehler?
2. Wie kann icch die 0/1 zu einem Byte zusammensetzen

Würde mich über jeden Hinweis, Hilfe oder Tip freuen.

Gruß Frank

WL
04.10.2012, 15:59
Hallo Frank,

wenn das ein FS20-Sensor ist (wovon man ausgehen darf) dann ist dies hier:
http://www.elv.de/fs20-und-wetterdaten-uart-empfaenger-fs20-wue-komplettbausatz.html
die erste Wahl.

In der Bauanleitung ist das Protokoll (Hauscode/Adressen u.s.w.) beschrieben und dein Mega8 liest die Telegramme mit UART ein.

frank-wob
04.10.2012, 16:39
Hallo Willi,

ist es leider nicht. Das HMS Protokoll ist anders. Mit FS20 habe ich keine Probleme. Das FHZ 1000 PC erkennt diese HMS Sensoren und kann über die Software auch die Temperatur anzeigen. Der FS20WUE kann das nicht.
Komischerweise kann ich am FHZ 1000 alle Daten die von FS20 Sendern kommen mitsniffen. (Habe intern den TX am PIC abgeriffen) Daten die vom HMS Sender kommen tauchen aber überhaupt nicht auf.:confused: Obwohl die Daten ja irgendwie in den PC kommen müssen.

Mit dem OSzi konnte ich die Pulslänge auf 1ms bestimmen, schaffe es aber nicht die Bitfolge in brauchbare Daten umzusetzen.

Gruß Frank