private int _Mcp2221Read(byte devAddr, byte regAddr, byte length, byte[] data) { byte[] reg = { regAddr }; int result; result = Mcp2221Api.Mcp2221I2cWriteApi(ipHandler, 1, devAddr, 1, reg); if (result < 0) { return(result); } result = Mcp2221Api.Mcp2221I2cReadApi(ipHandler, length, devAddr, 1, data); if (result < 0) { return(-3); } return(length); }
private int _AardvarkRead16(byte devAddr, byte[] regAddr, byte length, byte[] data) { byte[] reg = { regAddr[0], regAddr[1] }; int result; result = Mcp2221Api.Mcp2221I2cWriteApi(ipHandler, 2, devAddr, 1, reg); if (result < 0) { return(-1); } result = Mcp2221Api.Mcp2221I2cReadApi(ipHandler, length, devAddr, 1, data); if (result < 0) { return(-1); } return(length); }
public int ReadRawApi(byte devAddr, byte length, byte[] data) { int result; switch (as_atAdapterType) { case AdapterSelector.AdapterType.AS_AT_DUMMY: break; case AdapterSelector.AdapterType.AS_AT_AARDVARK: if (iHandler <= 0) { if (ConnectApi() < 0) { MessageBox.Show("I2cMasterConnectApi() fail!!"); } return(-1); } return(AardvarkApi.aa_i2c_read(iHandler, devAddr, AardvarkI2cFlags.AA_I2C_NO_FLAGS, length, data)); case AdapterSelector.AdapterType.AS_AT_MCP2221: if (ipHandler == IntPtr.Zero) { if (ConnectApi() < 0) { MessageBox.Show("I2cMasterConnectApi() fail!!"); } return(-1); } result = Mcp2221Api.Mcp2221I2cReadApi(ipHandler, length, devAddr, 1, data); if (result < 0) { return(-3); } return(length); default: break; } return(0); }