PIC16F87XA
DS39582B-page 106
2003 Microchip Technology Inc.
9.4.17.1
Bus Collision During a Start
Condition
During a Start condition, a bus collision occurs if:
a)
SDA or SCL are sampled low at the beginning of
the Start condition (Figure 9-26).
b)
SCL is sampled low before SDA is asserted low
During a Start condition, both the SDA and the SCL
pins are monitored.
If the SDA pin is already low, or the SCL pin is already
low, then all of the following occur:
the Start condition is aborted,
the BCLIF flag is set and
the MSSP module is reset to its Idle state
The Start condition begins with the SDA and SCL pins
deasserted. When the SDA pin is sampled high, the
Baud Rate Generator is loaded from SSPADD<6:0>
and counts down to 0. If the SCL pin is sampled low
while SDA is high, a bus collision occurs because it is
assumed that another master is attempting to drive a
data ‘1’ during the Start condition.
If the SDA pin is sampled low during this count, the
BRG is reset and the SDA line is asserted early
(Figure 9-28). If, however, a ‘1’ is sampled on the SDA
pin, the SDA pin is asserted low at the end of the BRG
count. The Baud Rate Generator is then reloaded and
counts down to 0 and during this time, if the SCL pin is
sampled as ‘0’, a bus collision does not occur. At the
end of the BRG count, the SCL pin is asserted low.
FIGURE 9-26:
BUS COLLISION DURING START CONDITION (SDA ONLY)
Note:
The reason that bus collision is not a factor
during a Start condition is that no two bus
masters can assert a Start condition at the
exact same time. Therefore, one master
will always assert SDA before the other.
This condition does not cause a bus colli-
sion because the two masters must be
allowed to arbitrate the first address fol-
lowing the Start condition. If the address is
the same, arbitration must be allowed to
continue into the data portion, Repeated
Start or Stop conditions.
SDA
SCL
SEN
SDA sampled low before
SDA goes low before the SEN bit is set.
S bit and SSPIF set because
SSP module reset into Idle state.
SEN cleared automatically because of bus collision.
S bit and SSPIF set because
Set SEN, enable Start
condition if SDA = 1, SCL = 1
SDA = 0, SCL = 1.
BCLIF
SSPIF
SDA = 0, SCL = 1.
SSPIF and BCLIF are
cleared in software
SSPIF and BCLIF are
cleared in software
Set BCLIF,
Start condition. Set BCLIF.
S
相关PDF资料
PIC16F876A-I/SO IC MCU FLASH 8KX14 EE 28SOIC
PIC16F876A-I/SP IC MCU FLASH 8KX14 EE 28DIP
AT87C51RD2-3CSUM IC 8051 MCU 64K OTP 40MHZ 40DIP
DSPIC33FJ64MC802-I/SO IC DSPIC MCU/DSP 64K 28-SOIC
DSPIC33FJ64GP802-I/MM IC DSPIC MCU/DSP 64K 28-QFN
AT87C51RD2-3CSUL IC 8051 MCU 64K OTP 30MHZ 40DIP
PIC18F2431-I/SP IC PIC MCU FLASH 8KX16 28DIP
AT87C51RC2-SLSUM IC 8051 MCU 32K OTP 40MHZ 44PLCC
相关代理商/技术参数
PIC16F876A-I/ML 制造商:Microchip Technology Inc 功能描述:IC 8BIT FLASH MCU SMD 制造商:Microchip Technology Inc 功能描述:IC, 8BIT FLASH MCU, SMD
PIC16F876A-I/MLG 功能描述:8位微控制器 -MCU 14KB 368 RAM 22 I/O Lead Free Package RoHS:否 制造商:Silicon Labs 核心:8051 处理器系列:C8051F39x 数据总线宽度:8 bit 最大时钟频率:50 MHz 程序存储器大小:16 KB 数据 RAM 大小:1 KB 片上 ADC:Yes 工作电源电压:1.8 V to 3.6 V 工作温度范围:- 40 C to + 105 C 封装 / 箱体:QFN-20 安装风格:SMD/SMT
PIC16F876A-I/SO 功能描述:8位微控制器 -MCU 14KB 368 RAM 22 I/O RoHS:否 制造商:Silicon Labs 核心:8051 处理器系列:C8051F39x 数据总线宽度:8 bit 最大时钟频率:50 MHz 程序存储器大小:16 KB 数据 RAM 大小:1 KB 片上 ADC:Yes 工作电源电压:1.8 V to 3.6 V 工作温度范围:- 40 C to + 105 C 封装 / 箱体:QFN-20 安装风格:SMD/SMT
PIC16F876A-I/SO 制造商:Microchip Technology Inc 功能描述:8BIT FLASH MCU SMD 16F876 SOIC28
PIC16F876A-I/SOE3 制造商:Microchip Technology Inc 功能描述:8-BIT, FLASH, 20 MHz, RISC MICROCONTROLLER, 28 Pin Plastic SMT
PIC16F876A-I/SOG 功能描述:8位微控制器 -MCU 14KB 368 RAM 22 I/O RoHS:否 制造商:Silicon Labs 核心:8051 处理器系列:C8051F39x 数据总线宽度:8 bit 最大时钟频率:50 MHz 程序存储器大小:16 KB 数据 RAM 大小:1 KB 片上 ADC:Yes 工作电源电压:1.8 V to 3.6 V 工作温度范围:- 40 C to + 105 C 封装 / 箱体:QFN-20 安装风格:SMD/SMT
PIC16F876A-I/SP 功能描述:8位微控制器 -MCU 14KB 368 RAM 22 I/O RoHS:否 制造商:Silicon Labs 核心:8051 处理器系列:C8051F39x 数据总线宽度:8 bit 最大时钟频率:50 MHz 程序存储器大小:16 KB 数据 RAM 大小:1 KB 片上 ADC:Yes 工作电源电压:1.8 V to 3.6 V 工作温度范围:- 40 C to + 105 C 封装 / 箱体:QFN-20 安装风格:SMD/SMT
PIC16F876A-I/SP 制造商:Microchip Technology Inc 功能描述:IC 8BIT FLASH MCU 16F876 SDIL28