RS232 Funkbrücke
Um RS232 drahtlos zu übertragen, wurden zunächst 433MHz zwei Sender und Empfänger Paare von Conrad jeweils mit einem ATMega8 betrieben, der die komplette Bit Kodierung und Dekodierung übernahm. Leider war die Übertragung nie zuverlässig, so dass diese Module später durch RMF12 Module ersetzt wurden. Für die RFM12 Module wurde dann ein fertiges Projekt für die vorhandene Schaltung angepasst. Die RFM12 übernehmen die komplette Bit Kodierung und Dekodierung und sind per SPI ansteuerbar. Der AVR kümmert sich seit dem nur noch um die Modulkonfiguration, Kollisionsmanagement und Fehlererkennung.Der Original Code stammt von: https://www.mikrocontroller.net/topic/71682#1010930
2016 wurde der alte Code von mir noch einmal gegenüber der original Version erweitert um das Kollisionsmanagement zu verbessern und mehr Testoptionen zu haben. Außerdem wurde das gleiche Protokoll in dem Solar Uhr Projekt verwendet.
Features
- Half-Duplex Funk Übertragung mit üblicherweise 19200Bit/s
- RS232 Schnittstelle mit einer von den Funkmodulen unabhängigen Baudrate
- ATMEGA8 Controller mit 8MHz
- Status LEDs für Senden/Empfanen/Fehler
- Jeweils 128Byte FIFO in Sende- und Empfangsrichtung
- 8Bit CRC zur Fehlererkennung
- Paket ID zum Erkennen und aussortieren von doppelt empfangenen Daten
- Bestätigen von erfolgreich empfangenen Daten und erneutem Senden falls die Bestätigung fehlt
- Taster um in einen Konfigurationsmodus zu wechseln (Baudrate e.t.c. einstellen)
- Einstellungen werden im EEPROM gespeichert
- Pseudo zufällige Wartezeiten bis zum nächsten Senden, falls eine Kollision erkannt wurde
Bilder
Schaltplan und Software
Wie immer, Verwendung auf eigenes Risiko und ohne Gewähr.
funk3-schaltplan.png | Schaltplan für die Verwendung mit RFM12 Modulen |
rfm12-patch1.zip | Patch um den Originalcode an den Schaltplan anzupassen |
rfm12-funkbruecke-version2.zip | Kompletter modifizierter und erweiterter Code |