Forum: Mikrocontroller und Digitale Elektronik RFM12 und Status Register


von Jakob G. (jakob2)


Lesenswert?

Hallo,

meine RFM12 wollen immernoch nicht laufen, daher muss ich noch ein paar 
Fragen los werden.

Also ich verwende im Moment den Standart-Aufbau, d.h. das Modul ist an 
die Hardware SPI eines Mega8 angeschlossen und der FSK Pin wird mittels 
Pull-Up hochgezogen.

Das Modul redet auch mit mir, soweit scheinbar kein Problem. Ich kann 
also z.B. die Frequenz des Quarz-Ausgangs verändern.

Als Init-Sequenz verwende ich folgendes (aus einem der Beispiele):

&HC0E0
&H80D7
&HC2AB
&HCA81
&HE000
&HC800
&HC4F7

Dann setze ich halt noch die Frequenz, Bandbreite, Baud und Leistung mit 
verschiedenen Subs.

So, wenn ich nach den ganzen Sequenzen das Statusregister auslese, dann 
bekomme ich da zuerst &HA003 raus. Wenn ichs nochmal lese, dann kommt 
&H8003 raus (FFOV/RGUR ändert sich, wenn ich das richtig interpretiere). 
Ich bin mir nicht so ganz sicher, was das zu bedeuten hat, da ich die 
einzelnen Bits des Statusregisters nicht so ganz verstehe. Gibt es da 
eine ausführlichere Erklärung als in dem Artikel über den RFM12?

Sodann versuche ich etwas zu senden. Daher schicke ich zuerst die 
Präambel aus dem Beispielcode vor:

&H8236
&HB8AA
&HB8AA
&HB8AA
&HB82D
&HB8D4

Dazwischen warte ich immer auf SDO=1, damit ich weiß, dass ich das 
nächste Word schreiben darf.

Wenn die Präambel durch ist (ich nehme mal an, dass mich das Modul 
versteht, denn es kommt ja immer ein SDO=1 zurück), dann schreibe ich 
einzelne Bytes mittels:

&HB800 + Datenbyte

Wenn ich nach dem Versand der einzelnen Bytes den Status abfrage, so 
bekomme ich &H2103 zurück. Das würde bedeuten FFIT/RGIT ist nun aus, 
dafür ist RSSI/ATS an. Nun, wie schon gesagt, das Register hilft mir 
irgendwie nicht so ganz, daher bin ich an dieser Stelle etwas ratlos.

Nachdem ich das Senden beendet habe schicke ich noch ein &H8208 raus, 
das den Sender wieder ausschaltet.

Wenn ich dann den Status lese, dann bekomme ich wieder &HA003 und später 
&H8003. Also das schon von der Initalisierungssequenz bekannte Muster.


Lange Rede, kurzer Sinn: Es funktioniert nicht und ich habe keine 
Ahnung, woran das liegt. Ich kann auch garnicht feststellen, ob der 
Sender überhaupt sendet oder nicht.

Kann mir da jemand helfen?

Danke schonmal für eine Antwort

von Jakob G. (jakob2)


Lesenswert?

So, kleines Update, evtl. ein Schritt in die richtige Richtung..

Ich habe die Ausgabeleistung etwas gesenkt und nun ist das RSSI/ATS Bit 
ausgegangen.

Allerdings ist das FFOV/RGUR Bit nach wie vor an, was ja bedeuten würde, 
dass das Senden nicht geglückt ist, weil der Controller zu langsam Daten 
schickt. Das kann ich mir aber nicht vorstellen, bei 9600Baud mit denen 
ich experimentiere... Komische Sache.

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.