Forum: Mikrocontroller und Digitale Elektronik RFM69CW und asm


von Bruno M. (brumay)


Angehängte Dateien:

Lesenswert?

Hallo,

ich versuche seit geraumer Zeit die Kommunikation zwischen zwei RFM69CW 
herzustellen, aber leider ohne Erfolg. Das Endziel ist eigentlich einen 
RFM69 als Sender mit einem vorhandenen RFM12 Empfänger zu koppeln, da 
der RFM12 Sender defekt ist. Ich dachte aber es wäre einfacher erst zwei 
RFM69 kommunizieren zu lassen.
Bei der Init habe ich mich an den hier verfügbaren Libraries (die 
allerdings alle in C sind) und der Einstellung der RFM12 orientiert. 
Deshalb habe ich auch das Unlimited Length Packet Format gewählt, da ich 
im RFM12 keine Längenangabe habe.

Das Init funktioniert auch problemlos. Auch das Auslesen der Register 
ist OK. Aber offensichtlich ist trotzdem etwas nicht in Ordnung!

Kann mir jemand auf die Sprünge helfen?

: Bearbeitet durch User
von Bruno M. (brumay)


Lesenswert?

Gibt es keinen mehr, der sich mit dem RFM69 beschäftigt oder beschäftigt 
hat?

von Sven S. (boldie)


Lesenswert?

Bruno M. schrieb:
> Gibt es keinen mehr, der sich mit dem RFM69 beschäftigt oder beschäftigt
> hat?

Das liegt vielleicht am asm und dass man nicht weiß für welchen 
Prozessor. Ich mache sowas nur in C -> Erog ich könnte mich rein denken, 
aber das macht den meisten wohl am Abend keinen Spaß.

von Bruno M. (brumay)


Lesenswert?

Danke für die Antwort!

asm ist vielleicht gar nicht nötig wenn ich das grundsätzliche Vorgehen 
klären kann. In diesem Funkthema habe ich einen ATtiny2313A verbaut, 
d.h. ich arbeite mit Software SPI.

von Board Geist (Gast)


Lesenswert?

Wurde dein Problem gelöst?

Dein angehangener Code hat mir weiter geholfen, ich wäre also im 
Gegenzug auch bereit etwas zur Klärung beizutragen.
Und jeder Beispielcode der als Funktionierend erklärt wurde hilft den 
Forum weiter.

Konkret habe ich hier herausgelesen, das man im unlimited length format, 
zum stoppen des fifo Fill mach Synchron-Wort Erkennung, einfach das FiFo 
Overload Flag selber setzt:

{rfm_cmd(0x2810, 1);}  //FiFo Overload condition selbst setzen

Ich empfehle die RFM69 Beispiele von Felix Pflaum,
diese habe ich kompiliert und mit den vorgegebenen Registerwerten lief 
alles sofort an.
Felix Pflaum hat auch bedacht, das krumme Berechnen für einen RFM12B mit 
einzubauen.

Nachteile sind das er nur Telegramme nutzen kann die in den FiFo passen 
(nichts mit unlimited) und das erste Byte MUSS das Längenbyte sein.
Will man das umgehen, stellt man den RFM69 einfach auf Fixed Length.

Gruß und Danke

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.