stimmt das wär wohl ganz nützlich:
also ich hab folgenden code hier um forum gefunden:
das hat aber nicht wirklich funktioniert, also hab ich selber was geschrieben:Code:int read2_compass() { int data; i2c_start(0xc0); // start the I2C bus i2c_write(0xc1); // device address of the compass i2c_write(1); // memory address first part i2c_stop(); i2c_start(0xc1); // restart data = i2c_readAck(); // read 1 byte data += i2c_readNak(); // read 1 byte i2c_stop(); // stopp return data; // return the number of direction }
Für beides sind die bibliotheken von Peter Fleury benutzt worden, vielleicht weiß ja jemand was dararn nicht stimmtCode:int read_compass() { int data_1; int data_2; int value; i2c_start(compass_add+I2C_WRITE); i2c_write(2); i2c_stop(); i2c_start(compass_add+I2C_READ); data_1=i2c_readNak(); i2c_stop(); i2c_start(compass_add+I2C_WRITE); i2c_write(3); i2c_stop(); i2c_start(compass_add+I2C_READ); data_2=i2c_readNak(); i2c_stop(); value=(data_1*256)+data_2; return value; }







Zitieren
Lesezeichen