-         

Ergebnis 1 bis 5 von 5

Thema: Arduino: I²C-Adresse als slave?

  1. #1
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    24.10.2005
    Beiträge
    110

    Arduino: I²C-Adresse als slave?

    Anzeige

    hallo,
    um den Arduino als I²C slave zu verwenden brauche ich seine I²C-Adresse - wie kriege ich die raus, vorzugsweise über ein sketch-Programm per USB?

    Anschlussfrage: kann man die Pullups softwaremäßig dazuschalten oder muss man die extern dazuschalten (je 83k an SDL/SCA oder so)?

    Ich habe ganz frisch ein Freeduino-Board von Franzis (Lernpaket für Anfänger, im Prinzip ein Uno/Diecimila mit ATmega 168PA-PU).

    danke schon mal im Vorraus!
    Helmut
    Viele Grüße - HaWe aka Ford
    NXC CHESS SCHACH für NXT: http://www.mindstormsforum.de/viewtopic.php?f=70&t=6790

  2. #2
    Erfahrener Benutzer Roboter Genie Avatar von BMS
    Registriert seit
    21.06.2006
    Ort
    TT,KA
    Alter
    26
    Beiträge
    1.192
    Hallo,
    hier gibt es ein Tutorial dafür: http://arduino.cc/en/Tutorial/MasterReader
    Die I2C-Adresse kann in dem Fall beliebig in Software vergeben werden.
    Pullups können von der Software dazu geschaltet werden. Allerdings sind die integrierten Pullups in der Regel relativ hochohmig. Bei zu langen Kabeln oder hohen Übertragungsgeschwindigkeiten können diese Probleme bereiten. Ich würde zu externen Pullup-Widerständen raten, in der Größenordnung 10kOhm und weniger. Ist ja wirklich kein großer Aufwand Nach I2C-Spezifikation dürfen maximal 3mA durch die Pullups fließen.
    Grüße, Bernhard
    "Im Leben geht es nicht darum, gute Karten zu haben, sondern auch mit einem schlechten Blatt gut zu spielen." R.L. Stevenson

  3. #3
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    24.10.2005
    Beiträge
    110
    hallo,
    danke für den Link.
    Ich sehe darin allerdings keine einstellbare oder abfragbare i2c-Adresse, und ich will als Master auch einen Mindstorms NXT verwenden (der braucht ca. 47k-83k Pullups). Der sendet bzw. liest dann einen I2C message-string aus adress-byte (z.B. 0x04) und register- und value-bytes an den Arduino-slave (oder alternative devices, wie z.B PCF8574).
    So ein Lego-NXC-i2c-Befehl hat z.B. die syntax
    Code:
    // vereinfacht: 
    i2cread(byte addr, byte reg, byte &msg[], byte len);
    Um diese I2C Adresse 0x04 geht es - noch funktioniert mein NXC (Lego-)Programm nicht damit, vllt liegt es daran, dass sie anders ist, vllt liegt der Fehler auch ganz woanders.
    Also muss ich zuerst nach der Arduino-i2c-Slave-Adresse scannen.

    Kannst du mich vllt notfalls nochmal mit der Nase drauf stoßen?
    Geändert von Ford Prefect (15.06.2014 um 18:02 Uhr)
    Viele Grüße - HaWe aka Ford
    NXC CHESS SCHACH für NXT: http://www.mindstormsforum.de/viewtopic.php?f=70&t=6790

  4. #4
    Erfahrener Benutzer Roboter Genie Avatar von Rabenauge
    Registriert seit
    13.10.2007
    Ort
    Osterzgebirge
    Alter
    49
    Beiträge
    1.245
    Code:
     Wire.begin(2);                // join I2C bus with address #2
    Mehr isses nicht...

    http://arduino.cc/en/Reference/WireBegin das auch mal lesen....
    Grüssle, Sly
    ..dem Inschenör ist nix zu schwör..

  5. #5
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    24.10.2005
    Beiträge
    110
    aaaahhhh....!
    danke
    Viele Grüße - HaWe aka Ford
    NXC CHESS SCHACH für NXT: http://www.mindstormsforum.de/viewtopic.php?f=70&t=6790

Ähnliche Themen

  1. RN-Relais (PCF 8574) Slave Adresse ändern
    Von ulby im Forum Elektronik
    Antworten: 7
    Letzter Beitrag: 28.12.2007, 12:34
  2. i2c slave adresse
    Von robin im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 8
    Letzter Beitrag: 26.02.2007, 09:54
  3. Slave Adresse vom RN-MOTOR ST I2C Schrittmotoransteuerung
    Von Zeroeightfifteen im Forum Elektronik
    Antworten: 2
    Letzter Beitrag: 06.06.2006, 16:00
  4. i2c-slave adresse vergeben
    Von patti16 im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 10
    Letzter Beitrag: 03.11.2005, 13:15
  5. TWI mit 2313 bzw. Slave Adresse?
    Von full_metall_bunny im Forum AVR Hardwarethemen
    Antworten: 2
    Letzter Beitrag: 12.01.2005, 15:16

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •