While I haven't got a PCF8575, this is code I wrote to read the PCA9685, it might help:-
//********************* Functions ***********************************
void PCA_write(byte address, byte control, byte data) {
// Send device address
Wire.beginTransmission(address);
Wire.send(control); // set control register
Wire.send(data ); // send byte
Wire.endTransmission();
}
void PCA_read(uint8_t address, uint8_t numberOfBytes) {
int data = 0, i=0;
Serial.print("Read ");
Serial.print(numberOfBytes,DEC);
Serial.println("bytes ");
// Connect to device and request bytes
Wire.requestFrom(address, numberOfBytes);
while(Wire.available() && i<numberOfBytes){
{
data = Wire.receive(); // receive a byte as character
i++;
Serial.println(data,HEX); // print it out
}
}
Serial.println("Read request finished");
}