Information

© 2006 Microchip Technology Inc. DS80131E-page 1
MSSP MODULE
The PICmicro
®
microcontrollers you have received all
exhibit anomalous behavior in their Master SSP
(MSSP) modules, as described in this document. They
otherwise conform functionally to the descriptions
provided in their respective Device Data Sheets and
Reference Manuals, as amended by silicon release
errata for particular devices.
Users are encouraged to review the latest Device Data
Sheets and errata available for additional information
concerning an individual device. These documents
may be obtained directly from the Microchip corporate
web site, at www.microchip.com.
These issues are expected to be resolved in future
silicon revisions of the designated parts.
Silicon issues 1 and 2 affect all silicon revisions of the
following devices:
1. Module: I
2
C™ (Slave Mode)
In its current implementation, the module may fail
to correctly recognize certain Repeated Start
conditions. For this discussion, a Repeated Start is
defined as a Start condition presented to the bus
after an initial valid Start condition has been recog-
nized and the Start status bit (SSPSTAT<3>) has
been set and before a valid Stop condition is
received.
If a Repeated Start is not recognized, a loss of
synchronization between the Master and Slave
may occur; the condition may continue until the
module is reset. A NACK condition, generated by
the Slave for any reason, will not reset the module.
This failure has been observed only under two
circumstances:
A Repeated Start occurs within the frame of a
data or address byte. The unexpected Start
condition may be erroneously interpreted as a
data bit, provided that the required conditions
for setup and hold times are met.
A Repeated Start condition occurs between two
back-to-back slave address matches in the
same Slave, with the R/W
bit set to Read (= 1)
in both cases. (This circumstance is regarded
as being unlikely in normal operation.)
Work around
A time-out routine should be used to monitor the
module’s operation. The timer is enabled upon the
receipt of a valid Start condition; if a time-out
occurs, the module is reset. The length of the time-
out period will vary from application to application
and will need to be determined by the user.
Two methods are suggested to reset the module:
1. Change the mode of the module to something
other than the desired mode by changing the set-
tings of bits, SSPM3:SSPM0 (SSPCON1<3:0>);
then, change the bits back to the desired
configuration.
2. Disable the module by clearing the SSPEN bit
(SSPCON1<5>); then, re-enable the module
by setting the bit.
Other methods may be available.
PIC16C717 PIC18F2220
PIC16C770 PIC18F2320
PIC16C771 PIC18F242
PIC16C773 PIC18F2439
PIC16C774 PIC18F248
•PIC16F737 •PIC18F252
•PIC16F747 •PIC18F2539
•PIC16F767 •PIC18F258
•PIC16F777 •PIC18F4220
•PIC16F872 •PIC18F4320
•PIC16F873 •PIC18F442
PIC16F873A PIC18F4439
•PIC16F874 •PIC18F448
PIC16F874A PIC18F452
•PIC16F876 •PIC18F4539
PIC16F876A PIC18F458
•PIC16F877 •PIC18F6520
PIC16F877A PIC18F6525
PIC17C752 PIC17F6585
PIC17C756 PIC18F6620
PIC17C756A PIC18F6621
PIC17C762 PIC18F6680
PIC17C766 PIC18F6720
PIC18C242 PIC18F8520
PIC18C252 PIC18F8525
PIC18C442 PIC18F8585
PIC18C452 PIC18F8620
PIC18C601 PIC18F8621
PIC18C801 PIC18F8680
PIC18C658 PIC18F8720
PIC18C858
MSSP Module Silicon/Data Sheet Errata

Summary of content (8 pages)