Microchip Technology MA160014 Data Sheet

Page of 560
PIC18(L)F2X/4XK22
DS41412F-page 254
 2010-2012 Microchip Technology Inc.
FIGURE 15-34:
BUS COLLISION DURING START CONDITION (SCLx = 0)      
FIGURE 15-35:
BRG RESET DUE TO SDA ARBITRATION DURING START CONDITION        
SDAx
SCLx
SEN
bus collision occurs. Set BCLxIF.
SCLx = 0 before SDAx = 0,
Set SEN, enable Start
sequence if SDAx = 1, SCLx = 1
T
BRG
T
BRG
SDAx = 0, SCLx = 1
BCLxIF
S
SSPxIF
Interrupt cleared
by software
bus collision occurs. Set BCLxIF.
SCLx = 0 before BRG time-out,
’0’
’0’
’0’
’0’
SDAx
SCLx
SEN
Set S
Less than T
BRG
T
BRG
SDAx = 0, SCLx = 1
BCLxIF
S
SSPxIF
S
Interrupts cleared
by software
set SSPxIF
SDAx = 0, SCLx = 1,
SCLx pulled low after BRG
time-out
Set SSPxIF
’0’
SDAx pulled low by other master.
Reset BRG and assert SDAx.
Set SEN, enable Start
sequence if SDAx = 1, SCLx = 1