The PCF8578H/1,118 can support I2C bus frequencies up to 400 kHz, but it's recommended to operate at 100 kHz or lower for reliable operation.
No, the PCF8578H/1,118 is not designed to be used as a level shifter. It's intended to be used as an I/O expander with a fixed VCC voltage. If you need level shifting, you should use a dedicated level shifter IC.
The internal pull-up resistors on the I/O pins are enabled by default. If you don't want to use them, you can disable them by writing a '0' to the corresponding bit in the configuration register. You can also use external pull-up or pull-down resistors if needed.
The PCF8578H/1,118 can sink or source up to 25 mA on each I/O pin, but it's recommended to limit the current to 10 mA or less to ensure reliable operation.
Yes, but you need to ensure that the microcontroller's I/O pins are 5V tolerant and can drive the I2C bus signals correctly. You may also need to use level shifters or voltage dividers to interface the 5V microcontroller with the 3.3V PCF8578H/1,118.