DatasheetQ Logo
Electronic component search and free download site. Transistors,MosFET ,Diode,Integrated circuits

PIC14000-04/JW 查看數據表(PDF) - Microchip Technology

零件编号
产品描述 (功能)
生产厂家
PIC14000-04/JW
Microchip
Microchip Technology 
PIC14000-04/JW Datasheet PDF : 153 Pages
First Prev 51 52 53 54 55 56 57 58 59 60 Next Last
PIC14000
FIGURE 7-17: OPERATION OF THE I2C IN IDLE_MODE, RCV_MODE OR XMIT_MODE
IDLE_MODE (7-bit):
if (Addr_match)
{
Set interrupt;
if (R/W = 1) {
Send ACK = 0;
set XMIT_MODE;
}
else if (R/W = 0) set RCV_MODE;
}
RCV_MODE:
if ((I2CBUF=Full) OR (I2COV = 1))
{ Set I2COV;
Do not acknowledge;
}
else
{
transfer I2CSR I2CBUF;
send ACK = 0;
}
Receive 8-bits in I2CSR;
Set interrupt;
XMIT_MODE:
While ((I2CBUF = Empty) AND (CKP=0)) Hold SCL Low;
Send byte;
Set interrupt;
if (ACK Received = 1)
{
End of transmission;
Go back to IDLE_MODE;
}
else if (ACK Received = 0) Go back to XMIT_MODE;
IDLE_MODE (10-Bit):
If (High_byte_addr_match AND (R/W = 0))
{ PRIOR_ADDR_MATCH = FALSE;
Set interrupt;
if ((I2CBUF = Full) OR ((I2COV = 1))
{
Set I2COV;
Do not acknowledge;
}
else
{
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)
{
PRIOR_ADDR_MATCH = TRUE;
Send ACK = 0;
while (I2CADD not updated) Hold SCL low;
Clear UA = 0;
Set RCV_MODE;
}
}
}
else if (High_byte_addr_match AND (R/W = 1)
{ if (PRIOR_ADDR_MATCH)
{
send ACK = 0;
set XMIT_MODE;
}
else PRIOR_ADDR_MATCH = FALSE;
}
DS40122B-page 54
Preliminary
© 1996 Microchip Technology Inc.

Share Link: 

datasheetq.com  [ Privacy Policy ]Request Datasheet ] [ Contact Us ]