Now I have ten accelerator sensors (ADXL345) connected to only one PIC16F887 using I2C. The problem is ADXL345 only has 2 I2C slave addresses configurable. So it brings conflict.
I know NXP does provide a I2C multiplexer that work around this kind of issue, but I have ten sensors. So it seems of no help.