Ich versuche nun schon seit Samstag mein RFM01-Modul dazu zu bewegen, was zu empfangen, aber nun geb ich doch auf und bitte hier um Hilfe. Das Ansprechen und Einstellen des Moduls scheint soweit auch zu funktionieren. Output-Takt lässt sich ändern und wenn ich die Startkondition des FIFOs auf VDI oder Always stelle empfange ich haufenweise wirre Zahlen.. Nur das Empfangen von meinen Daten klappt nicht. Als Sender dient mir ein RFM12, welcher auch funktioniert (Funkverbindung zwischen zwei RFM12s klappt problemlos). Der Empfänger ist an einem ATmega48 mit 8Mhz Takt angeschlossen und wir mit 5V versorgt. Könnte sich vielleicht irgendwer die Zeit nehmen und sich mein Programm einmal ansehen (is nix großes, gibt nur empfange Zeichen per RS232 aus) oder hätte eine definitiv funktionierende Routine, welche in mir ansehen könnte? PS.: Dieses Eingabefeld verleitet zu massenhaft Rechtschreibfehlern! Bitte verzeiht mir, wenn ich nicht alle im obigen Text gefunden habe.
> Datum: 24.11.2009 00:31 [ erste Anfrage ] > Datum: 24.11.2009 12:33 > Hat das Ding denn noch niemand zum laufen bekommen? Wow, was zahlst Du denn, wenn Du einen so flinken Support erwartest? ;-) Nix für ungut, aber ein bisschen mehr Geduld wär schon nett, auf der anderen Seite des Netzes sitzen auch nur Menschen. Ich hab erst mal nur kurz drübergesehen und was mir auffällt: Dir fehlt ein Päuschen nach dem Starten. _delay_ms(200) (eine funktionsfählige libc vorausgesetzt) sollte langen, damit das Modul erst mal Zeit bekommt, sich selbst in einen definierten Anfangszustand zu versetzen. Erst dann darfst mit der Initialisierung loslegen. HTH
Hallo,
und nicht vergessen vor und nach der Initialisierung ein "Status Read"
> rfphy_spi(0x0000);
einzufügen. Die Teile sind sonst ziemlich borstig.
MfG
Nachtrag, Du benutzt das RFM FIFO zu lesen, die SPI Frequenz ist beim auslesen dadurch auf <2,5 Mhz begrenzt! MfG
>Wow, was zahlst Du denn, wenn Du einen so flinken Support erwartest? ;-) > >Nix für ungut, aber ein bisschen mehr Geduld wär schon nett, auf der >anderen Seite des Netzes sitzen auch nur Menschen. Sorry, ich hatte einfach Sorge, dass mein Post in den morgendlichen Problemen untergeht und in Vergessenheit gerät. Ein 200ms-Delay hab ich jetzt am anfang eingefügt, ebenso wie ein auslesen des Statusregister vor und nach der Initialisation, die Geschwindigkeit des SPI hab ich durch ein 1µs-Delay auf unter 1MHZ begrenzt. Empfangen tue ich dennoch leider nichts... :(
Wenn ich mich recht entsinne, gibt es bei der Konfiguration der Modulations-Polarität einen Unterschied zwischen RFM12 und RFM01/02 Muss bei der 'TX Configuration Control' das mp-Bit sein. Dreh das mal versuchsweise um. Edit: nur beim Sender. Grüße, Peter
Jetzt funktioniert es :) Keine Ahnung, wo dran es lag. Ich hab im Anhang den bei mir funktionierenden Code angehängt, für den Fall, dass noch jemand solche Probleme hat.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.