2017-11-30 07:48 AM
We've noticed that the datasheet states the following about I2C timings:
tBUF - Bus free time between transmissions must be minimum 1.3ms
For a 400kHZ I2C transmission, that sounds quite a long wait between frames...
Is this OK, or is it an errata?
If not wrong, what could then happen if this tBUF is not respected?
Thanks in advance
#vl53l0x #i2c #vl53l0x-x-nucleo-53l0a12018-01-02 08:29 AM
The processor that takes the measurements and does the I2C I/O is not very big. The tBuf time gives the CPU enough time to process the command and do something useful. If the chip is not doing anything - say during initialization, you can do sequential I/Os to it. But when the chip is ranging, best not to query it too often. I've had customers ask the chip 'Are you done yet?' in a tight loop, and the master CPU simply overwhelms the sensor. It's best to either use the interrupt to check for 'done' or to wait a millisecond or two between queries.
- john