PIC16F87X
9.2
MSSP I
2
C Operation
The MSSP module in I
2
C mode fully implements all
master and slave functions (including general call sup-
port) and provides interrupts-on-start and stop bits in
hardware to determine a free bus (multi-master func-
tion). The MSSP module implements the standard
mode specifications, as well as 7-bit and 10-bit
addressing.
Refer to Application Note AN578,
"Use of the SSP
Module in the I
2
C Multi-Master Environment."
A "glitch" filter is on the SCL and SDA pins when the pin
is an input. This filter operates in both the 100 kHz and
400 kHz modes. In the 100 kHz mode, when these pins
are an output, there is a slew rate control of the pin that
is independant of device frequency.
Two pins are used for data transfer. These are the SCL
pin, which is the clock, and the SDA pin, which is the
data. The SDA and SCL pins are automatically config-
ured when the I
2
C mode is enabled. The SSP module
functions are enabled by setting SSP Enable bit
SSPEN (SSPCON<5>).
The MSSP module has six registers for I
2
C operation.
They are the:
SSP Control Register (SSPCON)
SSP Control Register2 (SSPCON2)
SSP Status Register (SSPSTAT)
Serial Receive/Transmit Buffer (SSPBUF)
SSP Shift Register (SSPSR) - Not directly acces-
sible
鈥?SSP Address Register (SSPADD)
The SSPCON register allows control of the I
2
C opera-
tion. Four mode selection bits (SSPCON<3:0>) allow
one of the following I
2
C modes to be selected:
鈥?I
2
C Slave mode (7-bit address)
鈥?I
2
C Slave mode (10-bit address)
鈥?I
2
C Master mode, clock = OSC/4 (SSPADD +1)
Before selecting any I
2
C mode, the SCL and SDA pins
must be programmed to inputs by setting the appropri-
ate TRIS bits. Selecting an I
2
C mode, by setting the
SSPEN bit, enables the SCL and SDA pins to be used
as the clock and data lines in I
2
C mode.
The CKE bit (SSPSTAT<6:7>) sets the levels of the
SDA and SCL pins in either master or slave mode.
When CKE = 1, the levels will conform to the SMBUS
specification. When CKE = 0, the levels will conform to
the I
2
C specification.
鈥?/div>
鈥?/div>
鈥?/div>
鈥?/div>
鈥?/div>
FIGURE 9-5:
I
2
C SLAVE MODE BLOCK
DIAGRAM
Internal
Data Bus
Read
SSPBUF reg
Shift
Clock
SSPSR reg
Write
SCL
SDA
MSb
LSb
Match detect
Addr Match
SSPADD reg
Start and
Stop bit detect
Set, Reset
S, P bits
(SSPSTAT reg)
漏
1999 Microchip Technology Inc.
DS30292A-page 71
prev
next
PIC16F87X相关型号PDF文件下载
-
型号
版本
描述
厂商
下载
-
英文版
8-Pin FLASH-Based 8-Bit CMOS Microcontrollers
-
英文版
8-Pin, 8-Bit CMOS Microcontroller with EEPROM Data Memory
MICROCHIP ...
-
英文版
8-Pin, 8-Bit CMOS Microcontroller with A/D Converter and EEP...
MICROCHIP ...
-
英文版
8-Pin, 8-Bit CMOS Microcontrollers
MICROCHIP ...
-
英文版
EPROM Memory Programming Specification
MICROCHIP ...
-
英文版
8-Pin FLASH-Based 8-Bit CMOS Microcontrollers
MICROCHIP ...
-
英文版
Microcontroller
-
英文版
Microcontroller
-
英文版
Microcontroller
ETC
-
英文版
EPROM-Based 8-Bit CMOS Microcontroller
-
英文版
8-Pin, 8-Bit CMOS Microcontrollers
-
英文版
8-Pin, 8-Bit CMOS Microcontrollers
MICROCHIP ...
-
英文版
ETC
-
英文版
EPROM Memory Programming Specification
-
英文版
EPROM Memory Programming Specification
MICROCHIP ...
-
英文版
28-Pin Programmable Mixed Signal Controller
-
英文版
EPROM Memory Programming Specification
-
英文版
Microcontroller
ETC
-
英文版
Microcontroller
ETC
-
英文版
EPROM/ROM-Based 8-Bit CMOS Microcontroller Series