Hallo Fred der Code ist in Arduino C geschrieben:
Was meinst Du eigendlich mit der ".bas - Zentrale" da sehe ich nicht ganz durch...Code:/* ========================================================================== */ /* */ /* i2c_expander.c */ /* (c) 2013 Gerhard Hinze */ /* */ /* Description */ /* */ /* ========================================================================== */ #ifndef F_CPU //#define F_CPU 3686400UL // STK500 #define F_CPU 16000000UL // Arduino UNO...etc #endif /* ========================================================================== */ /* */ /* */ /* */ /* ========================================================================== */ #include <avr/io.h> #include <util/delay.h> #include <Wire.h> /* ========================================================================== */ /* */ /* */ /* */ /* */ /* ========================================================================== */ #define expander 0x20 byte wert= 0xff ; void setup() { Wire.begin(); //Initialisieren der I2C Verbindung. } void loop() { Wire.beginTransmission(expander); //Öffnen I2C Verbindung Wire.send(wert); //Schreiben des Bytes. Wire.endTransmission(); //Schliessen I2C Verbindung delay(100); if (wert==0) { wert =0xff; } else { wert = wert--; } } /* ========================================================================== */
Ich kann zwar , bzw. besitze Bascom, aber ic h habe mich wegen AVR-Studio und Arduino auf C "spezialisiert"..
@Achim bei mir bleibt der Zustand auch nach Trennung von +Ub vom Expander bis zum neuen Betrieb bestehen.
darum setze ich alles auf High, also senden von 0xff beim Start..aber so richtig will das noch nicht gehen...
Gerhard
Lesezeichen