RFM12 library: Unterschied zwischen den Versionen
Keine Bearbeitungszusammenfassung |
D2ns (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
||
(Eine dazwischenliegende Version desselben Benutzers wird nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
{{ProjektInfoBox | |||
|name=rfm12lib | |||
|status=stable | |||
|image=Avr_rfm12.png | |||
|description=Die RFM12 Library ermöglicht es RF12(B) Module mit einem AVR zu steuern | |||
|author=[[Benutzer:Hansinator|Hansinator]], [[Benutzer:Tixiv|Tixiv]], [[Benutzer:Soeren|Soeren]] | |||
|version=1.1.0 | |||
|platform=AVR | |||
|license=GPLv2 or later | |||
|download=[https://github.com/das-labor/librfm12 GIT] | |||
|tags=Microcontroller & FPGAs, | |||
|update= | |||
}} | |||
For an english version of this site go to [[RFM12_library/en | RFM12 Library/EN]]. | For an english version of this site go to [[RFM12_library/en | RFM12 Library/EN]]. | ||
== Library Features == | == Library Features == |
Aktuelle Version vom 8. April 2017, 00:26 Uhr
rfm12lib Release status: stable [box doku] | |
---|---|
Description | Die RFM12 Library ermöglicht es RF12(B) Module mit einem AVR zu steuern |
Author(s) | Hansinator, Tixiv, Soeren |
Last Version | 1.1.0 () |
Platform | AVR |
License | GPLv2 or later |
Download | GIT |
For an english version of this site go to RFM12 Library/EN.
Library Features[Bearbeiten | Quelltext bearbeiten]
- Ein einfaches Paketformat, bestehend aus:
- Einem 8-bit (0..255) Pakettyp- oder Adress-feld
- Paketlänge bis zu 255 Bytes
- Eine simple Header Checksumme
- Interrupt oder Polling basierte Datenübertragung
- Verschiedene Frequenzbänder, abhängig von dem verwendeten Modul (433, 868 und 915 MHz)
- Collision avoidance (carrier sense)
- Synchronisierungsfunktion beim Datentransfer
- Hardware oder software SPI
- Nur-Sende-Modus, zum verkleinern der binaries
- Grundlegende ASK (amplitude shift keying) empfangs und sende Funktionalität (Für Funksteckdosen aus dem Baumarkt und ähnlichem)
- Low-battery detector (funktion des RFM12)
- Low-power Wakeup timer (funktion des RFM12)
Aktuelle Version[Bearbeiten | Quelltext bearbeiten]
Die aktuelle Version ist auf Github zu finden: librfm12
Experimental 1.1.1[Bearbeiten | Quelltext bearbeiten]
- Support für RFM12BP, bzw. Hooks für RX/TX Befehle (ungetestet)
Quellcode:
svn co https://www.das-labor.org/storage/LaborLib/rfm12/tags/rfm12-1.1.1-experimental/
Dokumentation[Bearbeiten | Quelltext bearbeiten]
Die online Dokumentation zur Version 1.0.0 findet sich hier:
http://www.hansinator.de/rfm12lib/
Eine gepackte Version zum Download gibt es hier:
http://www.das-labor.org/files/rfm12lib_doc_1_0_0.zip
Die Doku zu Version 1.1. ist identisch zu der Doku der Version 1.0
Download[Bearbeiten | Quelltext bearbeiten]
Den source der Version 1.1.0 gibt es hier als ZIP Datei zum Download (MD5: 4545ad72782bf9465c1be109ecce9da5).
Alternativ gibt es den aktuellsten Entwicklungsstand in unserem Subversion repository. Die sourcen sind entweder im web einsehbar, oder lassen sich direkt auschecken mit dem Kommando:
svn co https://www.das-labor.org/storage/LaborLib/rfm12/trunk
Benutzungsbeispiel[Bearbeiten | Quelltext bearbeiten]
Die Datei rfm12_config.h enthält die gesamte Konfiguration der Library, siehe Dokumentation.
Hier ist ein Beispiel zur Benutzung der Library:
uint8_t teststring[] = "teststring\r\n"; uint8_t packettype = 0xEE; rfm12_init(); /* initialize the library */ sei(); while (23) { /* ... */ rfm12_tx (sizeof(teststring), packettype, teststring); rfm12_tick(); /* periodic tick function - call that one once in a while */ }