RF12 sinnvoll nutzen

Gast #1141514
Hallo Leute,

Ich arbeite gerade an meinem Matura-Projekt bei dem ich das RFM12 Modul 
von Pollin nutze.
In eine RIchtung funkt schon alles prima, nur leider hab ich noch ein 
kleines Timing problem.

Folgendes soll umgesetzt werden:
Es gibt 2 Geräte. Das eine (Sender) analysiert das Frequenzspektrum (der 
Luft..) und sendet auf die Anfrage des Masters 10 Messwerte zu diesem. 
Der Master hat ein Menü auf einem Graphischen Display und gibt die 
Messwerte dann in einem Koordinatensystem aus. So weit so gut nur weiß 
ich nicht genau wie ich das softwaremäßig realisieren soll. Ich steure 
das Modul via SPI an. (Ulrich Radig sei Dank). Menü und Ausgabe sind 
schon fix und fertig und warten nur noch auf echte Messwerte.

Ich dachte mir, ich könnte immer im Interrupt die aktuellen Messwerte 
erfassen und somit parallel eine echtzeitausgabe machen. Wie kann ich 
denn die Funkmodule am besten dazu bringen, dass sie synchron senden? 
(gibt es eine Möglichkeit den FIFO schnell abzufragen?) Ich takte einen 
ATmega16 mit dem RF12 Clock (10MHz).

Vielen Dank

mfg.jones
Gast #1141524
>Ich dachte mir, ich könnte immer im Interrupt die aktuellen Messwerte
>erfassen und somit parallel eine echtzeitausgabe machen. Wie kann ich
>denn die Funkmodule am besten dazu bringen, dass sie synchron senden?

Der Master fragt und der Slave hält solange das Maul.
Von alleine sendet der Slave nichts. So sollte es gehen.
Gast #1141556
Ich hab da die Funktionen von Ulrich Radig. rf12_txdata(..) und 
rf12_rxdata(..)

das rx_data wartet normaler weise so lange bis daten herein kommen. aber 
der slave muss ja auch noch die Frequenzanalyse machen. Also hat er auch 
nicht immer Zeit um zu warten.

Am liebsten wäre mir fast wenn der Slave einfach sobald er mit der 
analyse fertig ist die Messwerte überträgt. also alle paar ms und das 
einfach 'endlos'. Nur wie ich das timen soll ist mir ein rätsel.

die ersten versuche mit Bidirektionalen Übertragungen hauen zwar hin 
(der eine wartet so lange bis er andere ein bestimmtes byte schickt, 
dann wird was zurückgeschickt..) nur leider extrem langsam (das dauert 
oft sekunden..). also mit den Funktionen von Radig schaff ich das glaube 
ich nicht...

Danke jedenfalls für die schnelle Antwort.
Gast #1141559
>Am liebsten wäre mir fast wenn der Slave einfach sobald er mit der
>analyse fertig ist die Messwerte überträgt. also alle paar ms und das
>einfach 'endlos'. Nur wie ich das timen soll ist mir ein rätsel.

Wenn der einfach drauf los sendet ist er kein Slave mehr.
Dann brauchst du auch keinen Master.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 17 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.