Hallo Gerhard! Kleiner Tipp: I²C Sensoren werden ja (üblicherweise/immer) als Sklaven behandelt. Aber egal wie - die SCHREIBAdresse ist IMMER gerade, die LESEAdresse immer ungerade... Sensor .. Habe mit dem I"C-Scanner die Adresse 0x76 herausgefunden.. Libs und Header dazu .. steht die Adresse 0x77 .. Tip/Hinweis für mich ??? ..
Siehe Beispiel, z.B. in meiner i2cmaster.h
Und daher heissen bei mir z.B. die Schreib-/Lesebefehle:Code:.. #include <avr/io.h> /** defines the data direction (reading from I2C device) in i2c_start(),i2c_rep_start() */ #define I2C_READ 1 /** defines the data direction (writing to I2C device) in i2c_start(),i2c_rep_start() */ #define I2C_WRITE 0 ..
.. und damit kann ich brav nur EINE einzige I²C-Adresse je Bauteil verwenden - die wird durch die Schreib-/Lesezusätze beim Lesen bzw. Schreiben immer angepasst *gg*.Code:.. if(!(i2c_start(SLAVE_MoCo+I2C_WRITE))) //Slave bereit zum schreiben? .. i2cdmy = i2c_start(SLAVE_MoCo+I2C_READ); // <<<### Lesen beginnen ..







Zitieren

Lesezeichen