Was sich daraus ergibt, dass dem IO-Warrior die Daten übergeben werden, die er auf den I2C Bus senden soll.hanskarl wrote:1.) Slave Adresse ist 8 bit (7 bit Adresse *2)
Zwei mal nein. Erstens kann es Transaktionen geben die mehr Daten benötigen als in einen Report passen. Dafür sind dann die Flags für das Generieren von Start und Stop vorhanden. Das erste Datenwort eines Reports ist also nicht automatisch die I2C Adresse.hanskarl wrote:2.) report[2] ist immer die Slaveadresse, im Datenblatt wird das bei Read mit command bezeichnet, wohl weil der Slave evtl. verschiedene Adressen hat unter denen verschiedene Werte geholt werden können.
Noch mal nein. Es ist die Länge des gesamten auf den I2C zu sendenden Datenpaketes anzugeben. Das Adress, bzw. Command-Byte gehört mit dazu.hanskarl wrote:3.) Beim write wird unter report[1] Start- Stopbit und Anzahl Daten angegeben. Die Anzahl ist um 1 höher zu wählen, weil offenbar bei der Anzahl Daten die Slaveadresse mitgezählt wird.
Nein?!?hanskarl wrote:4.) Ein sofortiger Read oder Write Aufruf nach der Initialisierung wird evtl. mit einem Aufhänger belohnt.