Forum: Mikrocontroller und Digitale Elektronik Funknetzwerk mit RFM12 Uart Beispiel??


von Sallos (Gast)


Lesenswert?

Tach,


ich bin auf der suche nach einem BeispielProjekt für ein Funknetzwerk 
mir RFM12 Modulen.

Ich will max 20Bytes übertragen.

Mein jetztiges Kabelnetzwerk sieht so aus:

Master-----Slave Adr2
________|--Slave Adr3
________|--Slave Adr4

Der Master sendet eine Anfrage und der passende Slave antwortet.


Gibt es evtl ein Beispiel Projekt? am liebste in Bascom :-D

von derwissel (Gast)


Lesenswert?

ich bau da grad was ähnliches- allerdings in C-

und funk ist natürlich auch um einiges komplizierter, wegen nötiger 
fehlererkennung etc, gelle?

von Johannes V. (johannes_v)


Angehängte Dateien:

Lesenswert?

Hallo,

ich habe diesen Code auf einem LPC2xxx verwendet, sollte portierbar sein 
wenn man den RTOS mist entfernt, und vermutlich umschreiben auf 8Bit.

Eigentlich allgemein gar nicht so gut der Ansatz, was besser wäre:
- Eigene Klasse "Packet" mit Member *pPacket zur Listenbildung
- Neue CRC, diese ist schnell und sicher, aber AVR clib hat eine die aus 
12zeilen besteht. Ohne Schleife, ohne statischen speicher.
- Eine Packet::compose(daten, addresse, blabla) funktion, kopiert daten 
in das paket, errechnet dabei crc und füllt alle nötigen felder.
- Zusätzliches feld für Netzwerk flags, wie "Acknowledge return" o.Ä.

Naja, konnte mit dem Code schon strings fehlerfrei asynchron über meinen 
Arbeitstisch verschicken, aber habe es dann aufgegeben zugunsten von 
RF22B Modulen. Sie sind weitaus mächtiger als die schäbigen RF12, und 
würden auch dein vorhaben vielfach vereinfachen.
Wenn du noch keine Module gekauft hast, schau sie dir dringend an. Es 
existiert sogar schon eine dicke ArduinoLib. Verstehe auch nicht wie 
hier teilweise noch RF12 empfohlen werden. Die anderen kosten nen euro 
mehr, aber das lohnt sich doppelt.

Bei deiner Anwendung mit RF22Bs müsstest du nur ein paar Register mit 
ensprechenden (Slave) Adressen füllen. Deine komplette 20 Byte Nachricht 
passt in die FIFO der RF22B und der Empfänger hat nur einen einzigen 
Interrupt, falls die eingebaute! crc prüfung nicht fehl schlägt.
Allgemein wesentlich weniger gefrickel und sie haben auch noch mehr 
Sendeleistung. Dazu kommt, dass es ein Excel sheet gibt was die ganzen 
Radio Frequenz Einstellungen abdeckt, womit sich mal eben das halbe 
Datenblatt überspringen lässt.

Naja, jedem das seine ;D

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.