- Akku Tests und Balkonkraftwerk Speicher         
Ergebnis 1 bis 1 von 1

Thema: Arduino als i2c-Slave

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

    Arduino als i2c-Slave

    Anzeige

    Praxistest und DIY Projekte
    hallo,
    ich bin gerade bei meinen ersten Versuchen, den NXT mit Arduino per I2C zu verbinden.

    Der Arduino liest alle 20ms einen Taster an digital pin 2 aus (Taster an VCC über 100kOhm gegen GND)
    value=digitalRead(signalpin);
    und gibt das Ergebnis an ledpin 13 (interne LED) aus
    digitalWrite(ledpin,value);
    Bis hierhin funktioniert es.

    Gleichzeitig wird er als devaddr 0x03 definiert
    Wire.begin(3);

    und soll auf i2c-request den Zustand des signalpins als byte an den i2c-Bus übergeben
    void requestEvent() {
    Wire.write(signalpin); // respond with message of 1 byte
    }


    das müsste soweit auch stimmen, oder?

    Leider funktioniert es nicht mit dem NXT-Master, daher will ich jetzt erstmal den Arduino-Teil klar kriegen.
    Ist der soweit in Ordnung?

    Code:
    // touch sensor with external Pullup at pin digital 2
    // I2C as slave, dev addr. 0x03
    
    #include <Wire.h> // serial lib
    
    int  ledpin=13;   
    byte signalpin=12;   
    byte value=0;  
    
    //*************************************************************************  
    void setup()  
    {  
      pinMode(ledpin,OUTPUT);    
      pinMode(signalpin,INPUT);
      
      Wire.begin(3);                // join I2C bus with dev address 0x03
      Wire.onRequest(requestEvent); // register event
    }  
    
    //*************************************************************************  
      
    void requestEvent() {
        Wire.write(signalpin);         // respond with message of 1 byte
    }
    
    //*************************************************************************
    
    void loop()  
    {  
      value=digitalRead(signalpin);    
      digitalWrite(ledpin,value);
    
      delay(20);  
    }
    ps, edit:
    muss man vom Master aus zusätzlich zur dev Addresse evtl noch eine Registeradresse eingeben? Ggf welche?
    Geändert von Ford Prefect (16.06.2014 um 17:53 Uhr)
    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. Arduino: I²C-Adresse als slave?
    Von Ford Prefect im Forum Arduino -Plattform
    Antworten: 4
    Letzter Beitrag: 15.06.2014, 19:08
  2. RP6 Base mal als i2C Master und als I2C Slave
    Von Lurchi im Forum Robby RP6
    Antworten: 6
    Letzter Beitrag: 15.05.2009, 22:08
  3. RN-Control als I2C Slave
    Von pinsel120866 im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 1
    Letzter Beitrag: 10.03.2009, 21:54
  4. RNBFRA-CO als I2C Slave
    Von PicNick im Forum Vorstellungen+Bilder von fertigen Projekten/Bots
    Antworten: 21
    Letzter Beitrag: 18.08.2006, 20:24
  5. RN-Control als Slave an I2C
    Von E-Donni im Forum Schaltungen und Boards der Projektseite Mikrocontroller-Elektronik.de
    Antworten: 1
    Letzter Beitrag: 10.08.2006, 13:00

Berechtigungen

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

fchao-Sinus-Wechselrichter AliExpress