I am using an I2C peripheral in PIC18 series running at 100 kHz and I have used pull up resistors of 4.7 k$Omega$ in the process. I then loaded a code with continuous write operation of EEPROM and viewed the SCL line in the scope. The SCL line does not stay always at 100 kHz. It varies from 100 kHz and some times jumps from 24 kHz to 50 kHz and reaches up to 100 kHz…never goes beyond that.
What should be done to make the SCL line stable at 100kHz? Will changing the pullup resistor make up the loss?