PIC18F24J11 MICROCHIP [Microchip Technology], PIC18F24J11 Datasheet - Page 321

no-image

PIC18F24J11

Manufacturer Part Number
PIC18F24J11
Description
28/44-Pin, Low-Power, High-Performance USB Microcontrollers with nanoWatt XLP Technology
Manufacturer
MICROCHIP [Microchip Technology]
Datasheet

Available stocks

Company
Part Number
Manufacturer
Quantity
Price
Part Number:
PIC18F24J11-I/ML
Manufacturer:
MICROCHIP
Quantity:
49 000
Part Number:
PIC18F24J11-I/SO
Manufacturer:
Microchip Technology
Quantity:
1 960
19.5.17.1
During a Start condition, a bus collision occurs if:
a)
b)
During a Start condition, both the SDAx and the SCLx
pins are monitored.
If the SDAx pin is already low, or the SCLx pin is
already low, then all of the following occur:
• The Start condition is aborted
• The BCLxIF flag is set
• The MSSP module is reset to its inactive state
The Start condition begins with the SDAx and SCLx
pins deasserted. When the SDAx pin is sampled high,
the BRG is loaded from SSPxADD<6:0> and counts
down to 0. If the SCLx pin is sampled low while SDAx
is high, a bus collision occurs because it is assumed
that another master is attempting to drive a data ‘1’
during the Start condition.
FIGURE 19-28:
 2011 Microchip Technology Inc.
(Figure
SDAx
SCLx
SEN
BCLxIF
S
SSPxIF
SDAx or SCLx is sampled low at the beginning
of the Start condition
SCLx is sampled low before SDAx is asserted
low
(Figure
19-28)
Bus Collision During a Start
Condition
19-29).
condition if SDAx = 1, SCLx = 1
Set SEN, enable Start
BUS COLLISION DURING START CONDITION (SDAx ONLY)
(Figure
SDAx sampled low before
Start condition. Set BCLxIF.
S bit and SSPxIF set because
SDAx = 0, SCLx = 1.
19-28).
SDAx goes low before the SEN bit is set.
S bit and SSPxIF set because
SDAx = 0, SCLx = 1.
Set BCLxIF,
SSPxIF and BCLxIF are
cleared in software
PIC18F46J11 FAMILY
If the SDAx pin is sampled low during this count, the
BRG is reset and the SDAx line is asserted early
(Figure
SDAx pin, the SDAx pin is asserted low at the end of
the BRG count. The BRG is then reloaded and counts
down to 0. If the SCLx pin is sampled as ‘0’ during this
time, a bus collision does not occur. At the end of the
BRG count, the SCLx pin is asserted low.
Note:
SEN cleared automatically because of bus collision.
MSSPx module reset into Idle state.
19-30). If, however, a ‘1’ is sampled on the
The reason that bus collision is not a fac-
tor during a Start condition is that no two
bus masters can assert a Start condition
at the exact same time. Therefore, one
master will always assert SDAx before the
other. This condition does not cause a bus
collision because the two masters must be
allowed to arbitrate the first address
following the Start condition. If the address
is the same, arbitration must be allowed to
continue into the data portion, Repeated
Start or Stop conditions.
SSPxIF and BCLxIF are
cleared in software
DS39932D-page 321

Related parts for PIC18F24J11