Hallo Dave,

ich hatte vor ein paar Tagen zu dem gleichen Interface eine Supportanfrage per Mail. Du warst nicht zufällig der Frager?

Falls nicht, ich habe mangels Detailkenntnissen des Interfaces folgendes geraten:

Also, ich würde das mit der WriteBytes Funktion lösen. Da ich von VB keine Ahnung habe und jetzt nicht weiß, wie man da mit Pointern arbeitet, das ganze in einer Art Pseudocode:

// Messung ausloesen (LED muss aufblinken
data = {0, 81};
OK = UsbI2CWriteBytes (0, 112, 2, addr(data));

Äquivalent beim Einlesen nach der Messung (70ms warten):

// Messwert holen
OK = UsbI2CWriteByte(0, 112, 2) // Startaddr. schreiben
OK = UsbI2CReadByte (0, 112, Range_HiByte); // Range Value lesen
OK = UsbI2CReadByte (0, 112, Range_LoByte);

evtl. auch UsbI2CReadBytes statt UsbI2CReadByte verwenden:

// Messwert holen
OK = UsbI2CWriteByte(0, 112, 2) // Startaddr. schreiben
OK = UsbI2CReadBytes (0, 112, 2, addr (data)); // Range Value in data lesen (2 Byte)

Vielleicht hilft das ja schon weiter.

Viele Grüße
Jörg