I2C: Raspberry als Slave WIE implementieren?

  • Hallo zusammen,


    ich betreibe einen Raspberry und einen Arduino am I2C-Bus damit die beiden kommunizieren können. Ich benötige den Raspberry auf jeden Fall als Slave und den Arduino als Master. Wie ich im Arduino Daten über den Bus schreibe, weiß ich:


    Aber was genau muss ich im Raspberry implementieren? Klar, ich horche in einer Schleife auf der Adresse 0x25 und warte bis Daten kommen. Anschließend kann ich entsprechende Daten wieder zurück schicken. Aber was genau muss ich implementieren? Bisher habe ich leider nur das:

    Code
    def readMsg():
    data = com.read_i2c_block_data(0x25, 0, 7)
    return data
    while True:
        data = readMsg()
    print(data)
        time.sleep(2)
       

    Kann vielleicht jemand weiter helfen?



    Viele Grüße,

    Berryfox

  • An welche i2c - Adresse sendet Dein Arduino-Master seine Daten (oder versucht es zumindest) ?


    Linux unterstützt (noch ?) keinen i2c Slave und ein Slave braucht eine Slave Adresse.



    Servus !

    RTFM = Read The Factory Manual, oder so

  • ich betreibe einen Raspberry und einen Arduino am I2C-Bus damit die beiden kommunizieren können.

    Nur deswegen? Wäre USB nicht auch ne Lösung?

    Der Unterschied zwischen Genie und Wahnsinn definiert sich im Erfolg.