private bool WriteFloat(I2cEncoderAddress address, float value) { var buffer = new byte[5]; buffer[0] = (byte)address; if (value != (float)0.0) { var bufferReverse = BitConverter.GetBytes(value); buffer[1] = bufferReverse[3]; buffer[2] = bufferReverse[2]; buffer[3] = bufferReverse[1]; buffer[4] = bufferReverse[0]; } var result = _i2cEncoder.WritePartial(buffer); if (result.Status == I2cTransferStatus.FullTransfer) { return(true); } else { return(false); } }
public int Read8(I2cEncoderAddress address) { var bAddress = new byte[1]; bAddress[0] = (byte)address; var buffer = new byte[1]; var result = _i2cEncoder.WriteReadPartial(bAddress, buffer); return((int)buffer[0]); }
public bool Write8(I2cEncoderAddress address, int value) { var buffer = new byte[2]; buffer[0] = (byte)address; buffer[1] = (byte)value; var result = _i2cEncoder.WritePartial(buffer); if (result.Status == I2cTransferStatus.FullTransfer) { return(true); } else { return(false); } }
public int Read16(I2cEncoderAddress address) { var bAddress = new byte[1]; bAddress[0] = (byte)address; var buffer = new byte[2]; var result = _i2cEncoder.WriteReadPartial(bAddress, buffer); var bufferInt = 0; if (buffer[0] != 0 || buffer[1] != 0) { var bufferReverse = new Byte[2]; bufferReverse[0] = buffer[1]; bufferReverse[1] = buffer[0]; bufferInt = BitConverter.ToInt16(bufferReverse, 0); } return(bufferInt); }
public float ReadFloat(I2cEncoderAddress address) { var bAddress = new byte[1]; bAddress[0] = (byte)address; var buffer = new byte[4]; var result = _i2cEncoder.WriteReadPartial(bAddress, buffer); float bufferFloat = 0; if (buffer[0] != 0 || buffer[1] != 0 || buffer[2] != 0 || buffer[3] != 0) { var bufferReverse = new Byte[4]; bufferReverse[0] = buffer[3]; bufferReverse[1] = buffer[2]; bufferReverse[2] = buffer[1]; bufferReverse[3] = buffer[0]; bufferFloat = (float)BitConverter.ToSingle(bufferReverse, 0); } return(bufferFloat); }