PIC16F88-I/P Microchip Technology Inc., PIC16F88-I/P Datasheet - Page 97
![no-image](/images/manufacturer_photos/0/4/440/microchip_technology_inc__sml.jpg)
PIC16F88-I/P
Manufacturer Part Number
PIC16F88-I/P
Description
18 PIN, 7 KB FLASH, 368 RAM, 16 I/O
Manufacturer
Microchip Technology Inc.
Datasheet
1.PIC16F88-IP.pdf
(228 pages)
Specifications of PIC16F88-I/P
A/d Inputs
7-Channel, 10-Bit
Comparators
2
Cpu Speed
5 MIPS
Eeprom Memory
256 Bytes
Input Output
16
Interface
I2C/SPI/USART
Memory Type
Flash
Number Of Bits
8
Package Type
18-pin PDIP
Programmable Memory
7K Bytes
Ram Size
368 Bytes
Speed
20 MHz
Timers
2-8-bit, 1-16-bit
Voltage, Range
2-5.5 V
Lead Free Status / Rohs Status
RoHS Compliant part
Electrostatic Device
Available stocks
Company
Part Number
Manufacturer
Quantity
Price
Company:
Part Number:
PIC16F88-I/P
Manufacturer:
Microchi
Quantity:
6 825
Part Number:
PIC16F88-I/P
Manufacturer:
MICROCH
Quantity:
20 000
10.3.2
Master mode operation is supported in firmware using
interrupt generation on the detection of the Start and
Stop conditions. The Stop (P) and Start (S) bits are
cleared from a Reset, or when the SSP module is dis-
abled. The Stop (P) and Start (S) bits will toggle based
on the Start and Stop conditions. Control of the I
may be taken when the P bit is set, or the bus is Idle
and both the S and P bits are clear.
In Master mode operation, the SCL and SDA lines are
manipulated in firmware by clearing the corresponding
TRISB<4,1> bit(s). The output level is always low, irre-
spective of the value(s) in PORTB<4,1>. So, when
transmitting data, a ‘1’ data bit must have the
TRISB<1> bit set (input) and a ‘0’ data bit must have
the TRISB<1> bit cleared (output). The same scenario
is true for the SCL line with the TRISB<4> bit. Pull-up
resistors must be provided externally to the SCL and
SDA pins for proper operation of the I
The following events will cause the SSP Interrupt Flag
bit, SSPIF, to be set (SSP Interrupt if enabled):
• Start condition
• Stop condition
• Data transfer byte transmitted/received
Master mode operation can be done with either the
Slave mode Idle (SSPM3:SSPM0 = 1011), or with the
Slave mode active. When both Master mode operation
and Slave modes are used, the software needs to
differentiate the source(s) of the interrupt.
For more information on Master mode operation, see
Application Note AN554, “Software Implementation of
I
TABLE 10-3:
2005 Microchip Technology Inc.
0Bh, 8Bh,
10Bh,18Bh
0Ch
8Ch
13h
93h
14h
94h
86h
Legend:
Note 1:
2
C™ Bus Master”.
Address
2:
x = unknown, u = unchanged, - = unimplemented locations read as ‘0’.
Shaded cells are not used by SSP module in SPI™ mode.
This bit is only implemented on the PIC16F88. The bit will read ‘0’ on the PIC16F87.
Maintain these bits clear in I
MASTER MODE OPERATION
INTCON
PIR1
PIE1
SSPBUF
SSPADD
SSPCON
SSPSTAT
TRISB
Name
REGISTERS ASSOCIATED WITH I
Synchronous Serial Port (I
PORTB Data Direction Register
Synchronous Serial Port Receive Buffer/Transmit Register
SMP
WCOL
Bit 7
GIE
—
—
(2)
ADIE
SSPOV
ADIF
CKE
PEIE
Bit 6
2
(2)
C™ mode.
(1)
(1)
2
C module.
TMR0IE
SSPEN
RCIE
RCIF
Bit 5
D/A
2
2
C mode) Address Register
C bus
INT0IE
Bit 4
TXIF
TXIE
CKP
P
2
SSPM3 SSPM2 SSPM1 SSPM0
C™ OPERATION
SSPIF CCP1IF TMR2IF TMR1IF
SSPIE CCP1IE TMR2IE TMR1IE -000 0000 -000 0000
RBIE
Bit 3
S
10.3.3
In Multi-Master mode operation, the interrupt genera-
tion on the detection of the Start and Stop conditions
allows the determination of when the bus is free. The
Stop (P) and Start (S) bits are cleared from a Reset, or
when the SSP module is disabled. The Stop (P) and
Start (S) bits will toggle based on the Start and Stop
conditions. Control of the I
bit P (SSPSTAT<4>) is set, or the bus is Idle and both
the S and P bits clear. When the bus is busy, enabling
the SSP interrupt will generate the interrupt when the
Stop condition occurs.
In Multi-Master mode operation, the SDA line must be
monitored to see if the signal level is the expected out-
put level. This check only needs to be done when a
high level is output. If a high level is expected and a low
level is present, the device needs to release the SDA
and SCL lines (set TRISB<4,1>). There are two stages
where this arbitration can be lost:
• Address Transfer
• Data Transfer
When the slave logic is enabled, the slave device
continues to receive. If arbitration was lost during the
address transfer stage, communication to the device
may be in progress. If addressed, an ACK pulse will be
generated. If arbitration was lost during the data
transfer stage, the device will need to retransfer the
data at a later time.
For more information on Multi-Master mode operation,
see Application Note AN578, “Use of the SSP Module
in the of I
TMR0IF INT0IF
Bit 2
R/W
2
C™ Multi-Master Environment”.
MULTI-MASTER MODE OPERATION
Bit 1
UA
PIC16F87/88
RBIF
Bit 0
BF
2
C bus may be taken when
0000 000x 0000 000u
-000 0000 -000 0000
xxxx xxxx uuuu uuuu
0000 0000 0000 0000
0000 0000 0000 0000
0000 0000 0000 0000
1111 1111 1111 1111
POR, BOR
Value on
DS30487C-page 95
Value on
all other
Resets