Datasheet

PIC17C7XX
DS30289C-page 166 1998-2013 Microchip Technology Inc.
FIGURE 15-30: ACKNOWLEDGE FLOW CHART
Idle Mode
Force SCL = 0
Yes
No
SCL = 0?
Drive ACKDT bit
Yes
No
BRG
Rollover?
(SSPCON2<5>)
onto SDA pin,
Load BRG with
SSPADD<6:0>,
Start Count.
Force SCL = 1
Yes
No
SCL = 1?
No
ACKDT = 1?
Load BRG with
No
BRG
Rollover?
SSPADD <6:0>,
Start Count.
No
SDA = 1?
Bus Collision Detected,
Set BCLIF,
Yes
Force SCL = 0,
(Clock Arbitration)
Clear ACKEN
No
SCL = 0?
Reset BRG
Clear ACKEN
Set ACKEN
Release SCL,
Yes
Yes
Yes
Set SSPIF