Yes, but you'll need to edit the Wire library code.
Look for this code in Wire.cpp:
Code:
#if F_BUS == 48000000
I2C0_F = 0x27; // 100 kHz
// I2C0_F = 0x1A; // 400 kHz
// I2C0_F = 0x0D; // 1 MHz
I2C0_FLT = 4;
#elif F_BUS == 24000000
I2C0_F = 0x1F; // 100 kHz
// I2C0_F = 0x45; // 400 kHz
// I2C0_F = 0x02; // 1 MHz
I2C0_FLT = 2;
#else
#error "F_BUS must be 48 MHz or 24 MHz"
#endif
Those magic numbers from from table 44.4.1.10 on page 1027-1028 in the
reference manual. 0x3F is the slowest, which should result in a 12.5 kHz clock on SCL.
You can also use 0x7F or 0xBF, which turns on the multiplier, that should give you 6.25 or 3.125 kHz. However, I do not recommend using the multiplier. It seems to cause trouble with some of the I2C features.
You can also run Teensy3 at 24 MHz to cut the bus clock speed in half.
It's 100 kHz.
Internally, Teensy3 has several clocks. The "bus" clock is 48 MHz when the CPU is either 48 or 96. The I2C runs from the bus clock.