I2C_Read

I2C Funktionen


Syntax

 

byte I2C_Read(byte addr, dword hdrbyte hdr_lenbyte mem_addr[],

              word length);

 

Sub I2C_Read(addr As Bytehdr As ULonghdr_len As Byte,

             ByRef mem_addr As Bytelength As WordAs Byte

 

 

Beschreibung

 

Zuerst werden an das I2C device mit Adresse addr (I2C 7-bit Adresse) bis zu 4 Bytes header Daten geschrieben. Die Daten werden in hdr übergeben, die Anzahl der Bytes in hdr_len. Dabei darf hdr_len Null sein, d.h. es wird kein header übertragen. Es werden immer zuerst die höherwertigen Bytes des header übertragen. Anschließend werden length bytes vom I2C device in das array mem_addr geschrieben.

 

 Der Begriff header steht hier nicht für einen spezifischen I2C Term, sondern für bis zu 4 Bytes die an das I2C device übertragen werden. Viele I2C Geräte benutzen einen solchen header um z.B. ein Register zu indizieren.

 

Parameter

 

addr Adresse des I2C Gerätes
hdr Bis zu 4 byte header Daten
hdr_len Länge des headers
mem_addr Array in das die I2C Daten gelesen werden
length Anzahl der Daten die gelesen werden

 

Rückgabewert

 

-1 = Übertragungsfehler
0= erfolgreich