Guten Abend allerseits.. Ich experimentiere momentan mit dem RFM12, teste momentan mein funkprotokoll.. ich verwende den Treiber von J.Eckert hier aus dem Forum, welchen ich um eine Transaktionsschicht erweitert habe: Master sendet Paket, Slave ACK, Master ACK. Als Daten werden 3 Byte gesendet, welche der Slave per PWM auf 3 LEDs "ausgibt" - zur visualisierung. Momentan passiert dies im Sekundentakt, und funktioniert auch relativ gut. Leider scheint das RFM12 modul auf dem Slave hin und wieder hängenzubleiben, er reagiert dann nicht mehr auf Pakete vom Master - obwohl die Firmware im Fehlerfall einfach ein neues Paket abwartet.. Scheinbar stellt also das RFM irgendwann den Dienst ein.. - ist so ein Verhalten bekannt? Wie erkennt/umgeht man sowas? mfg
Ich habe das Problem beim Senden mein µC wartet ab bis SDO High wird das nie ankommt, und daher in einer endlosschleife steckt. gruß Martin
Bei meinen RFM01/02 Routinen lasse ich deswegen einen Timer parallel laufen, der bei einem solchen Timeout das Modul zurücksetzt, den FIFO löscht und den Receiver neu initialisiert. Zum Senden mit RFM12 kann ich nichts sagen, ausser das ich beim RFM02 den nIRQ gesteuerten Sender nehme, bei dem dieses Verhalten nicht vorkommt.
der thread ist ja schon was älter... ich kann leider nicht mehr ganz nachvollziehen, was ich wann geändert habe.. aber seitdem ich die interruptgesteuerten funktionen benutze, und den SPI etwas runtergetaktet habe (war wohl n bisschen schnell eingestellt) klappts.. momentan ist für die taktrate im spcr nur SPE =1, alles andere 0. weiß grad nicht was das dann fürn takt ist.. :D mfg
Das bedeutet dass dein AVR im Slave-Modus läuft und die SPI-Frequenz ist 1/4 der Quarz-Frequenz. Wie hoch ist bei dir die Quarz-Frequenz?
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.