Electronics > Microcontrollers

Bus Arbitration Process I2C

<< < (3/3)


--- Quote from: Mtech1 on October 03, 2023, 10:20:27 pm ---I'm still unclear  of the arbitration process in I2C communication. From my understanding, the I2C bus is ideally in a high state because of its pull-up resistors.  both the outputs of two masters are connected to the inputs of a wired AND function. What happens when two attempts to drive sda low at time. How one know that I2C bus is busy because some other master has take control on the bus.

--- End quote ---
It doesn't matter, since there is no corruption. There can only be corruption if a master tries to signal low after it detected another master pulling low when it signalled high, which doesn't happen because the master which tried to signal high immediately stops signalling altogether.

The first high when the other is low, looses access for that message.

PS. stop thinking in logic terms, you're confusing yourself. Think only about high and low and forget about AND for a moment. Yes it's a diode logic AND, but that's really besides the point.


[0] Message Index

[*] Previous page

There was an error while thanking
Go to full version
Powered by SMFPacks Advanced Attachments Uploader Mod