PIC14000-04 Microchip Technology, PIC14000-04 Datasheet - Page 54

no-image

PIC14000-04

Manufacturer Part Number
PIC14000-04
Description
28-Pin Programmable Mixed Signal Controller
Manufacturer
Microchip Technology
Datasheet

Available stocks

Company
Part Number
Manufacturer
Quantity
Price
Part Number:
PIC14000-04/SO
Quantity:
48
Part Number:
PIC14000-04/SO
Manufacturer:
Microchip Technology
Quantity:
135
Part Number:
PIC14000-04/SO
Manufacturer:
Maxim
Quantity:
103
Part Number:
PIC14000-04/SP
Manufacturer:
Microchip
Quantity:
482
Part Number:
PIC14000-04/SP
Manufacturer:
MICROCHIP/微芯
Quantity:
20 000
Part Number:
PIC14000-04/SS
Manufacturer:
Microchip Technology
Quantity:
135
Part Number:
PIC14000-04/SS
Manufacturer:
MICROCHI
Quantity:
20 000
PIC14000
FIGURE 7-17: OPERATION OF THE I
DS40122B-page 54
IDLE_MODE (7-bit):
if (Addr_match)
RCV_MODE:
if ((I2CBUF=Full) OR (I
else
Receive 8-bits in I
Set interrupt;
XMIT_MODE:
While ((I2CBUF = Empty) AND (CKP=0)) Hold SCL Low;
Send byte;
Set interrupt;
if (ACK Received = 1)
else if (ACK Received = 0) Go back to XMIT_MODE;
IDLE_MODE (10-Bit):
If (High_byte_addr_match AND (R/W = 0))
else if (High_byte_addr_match AND (R/W = 1)
{
}
{
}
{
}
{
else PRIOR_ADDR_MATCH = FALSE;
}
Set I
Do not acknowledge;
send ACK = 0;
Set interrupt;
if ((I2CBUF = Full) OR ((I2COV = 1))
else
if (PRIOR_ADDR_MATCH)
transfer I
PRIOR_ADDR_MATCH = FALSE;
2
CSR;
2
COV;
2
COV = 1))
2
CSR
{
}
{
}
{
}
I
{
}
{
}
Do not acknowledge;
Set UA = 1;
Send ACK = 0;
While (I2CADD not updated) Hold SCL low;
Clear UA = 0;
Receive Low_addr_byte;
Set interrupt;
Set UA = 1;
If (Low_byte_addr_match)
send ACK = 0;
set XMIT_MODE;
2
Set I2COV;
CBUF;
Set interrupt;
if (R/W = 1)
else if (R/W = 0) set RCV_MODE;
End of transmission;
Go back to IDLE_MODE;
{
}
2
C IN IDLE_MODE, RCV_MODE OR XMIT_MODE
PRIOR_ADDR_MATCH = TRUE;
Send ACK = 0;
while (I2CADD not updated) Hold SCL low;
Clear UA = 0;
Set RCV_MODE;
Preliminary
{
}
Send ACK = 0;
set XMIT_MODE;
1996 Microchip Technology Inc.

Related parts for PIC14000-04