I²C Funkbrücke

Gast #2695988
Hallo zusammen,

ich möchte gerne eine I²C Funkbrücke aufbauen. Angedacht ist eine 
Kombination aus µC  und RFM12 Modul.
Die RFM12 bieten aber nur einen Kanal zur Übertragung (halbduplex), 
erschwerend kommt dazu, dass SDA bidirektional ist


Kennt jemand vielleicht einen Lösungsansatz (möglichst auf RFM12), wie 
sich das Ganze übertragen lässt??

Thx für Eure Hilfe

Jo
#2696097
Hallo,

dann schau dir mal die gängigen Projekte zu RS232 Funkbrücken an.
Die Funktionen für RS232 ersetzt du "einfach" durch welche für I2C.
Im übrigen ist I2C genau wie der Funkkanal nur halbduplex, nur das du an 
der Funkseite natürlich nicht so schnell dir Richtung wechseln kannst!

Eine für alle I2C-Bausteine transparente Übertragung wirst du nicht 
hinbekommen, da der µC einen Datenframe immer komplett entgegennehmen 
muss um die Daten dann über Funk weiterzuleiten. Dazu muss der µC 
natürlich wissen was für Daten kommen können da die Protokolle ja recht 
unterschiedlich sind.
Und ob ein IC2-Master u.U. mal eben ein paar Sekunden warten will bis 
deine Funkbrücke die Adresse zur Datenabfrage an die Gegenstelle 
übermittelt hat und die Daten dann wieder zurückkommen ist noch eine 
ganz andere Frage.


Sascha
#2696485
Sascha Weber schrieb:
> Und ob ein IC2-Master u.U. mal eben ein paar Sekunden warten will bis
> deine Funkbrücke die Adresse zur Datenabfrage an die Gegenstelle
> übermittelt hat und die Daten dann wieder zurückkommen ist noch eine
> ganz andere Frage.
Das geht generell nicht. I2C ist so aufgebaut das sofort "geantwortet" 
werden muss und das auch noch auf der Sendeleitung (SDA). Also 
vollkommen anders als bei RS232.

Wenn dann hat man nur eine Chance wenn man die Signalzustände bzw. Pegel 
der Leitungen ständig abfragt und sendet. Also keine Byte oder Bit 
übertragung sondern nur die Zustände von SDA und SCL.

Möglich ist es sicher sowas aufzubauen, aber wohl nicht so ganz einfach.
#2696866
Es geht zwar nicht direkt aber mit einem speziellen Controller ist es 
sicherlich möglich, z.B. den UART - I²C Bus Controller SC18IM700. Dieser 
Controller wird über die serielle Schnittstelle mittels ASCII Commandos 
gesteuert und es können I²C Slave angeschlossen werden. Die serielle 
Schnittstelle geht dann über Funk. Dazu gibt es ja genügend Beispiele.

Gruß
Olaf
(Firma: EleLa - www.elela.de) #2696873
Den I2C Bus kann man beliebig lange "Pausieren" indem man einfach die 
CLK Leitung auf GND zieht. Während diesem Zustand hat man genügend Zeit 
von der Gegenstelle das ACK Bit ab zu fragen und aus zu tauschen.

I2C über Funk zu realisieren ist machbar, aber wird immer eine Krücke 
bleiben.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 14 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.