Das Datenblatt ist doch wirklich ganz ganz einfach für I²C, in etwa so;
Für 1 Byte:
Code:
i2c_start(ADRESS+I2C_WRITE);
i2c_write(REGISTER_ADDRESS);
i2c_stop();
i2c_start(ADRESS+I2C_READ);
registerinhalt = i2c_readNak();
i2c_stop();
Für alle 6 am Stück:
Code:
i2c_start(ADRESS+I2C_WRITE);
i2c_write(0);
i2c_stop();
i2c_start(ADRESS+I2C_READ);
byte 0 = i2c_readAck();
byte 1 = i2c_readAck();
byte 2 = i2c_readAck();
byte 3 = i2c_readAck();
byte 4 = i2c_readAck();
byte 5 = i2c_readNak();
i2c_stop();
Auf Seite 37 ist eine Grafik, die alles perfekt und easy zeigt.
Lesezeichen