16.3.4 应答信号子函数

应答信号子函数用于表明I2C总线数据传输的结束。

I2C总线数据传送时,一个字节数据传送完毕后都必须由主器件产生应答信号。主器件在第9个时钟位上释放数据总线SDA,使其处于高电平状态,此时从器件输出低电平拉低数据总线SDA为应答信号。应答信号时序如图16.5所示,在程序中,可以直接为SDA和SCL赋值来实现应答信号的时序。应答信号子函数示例如下。

16.3.4 应答信号子函数 - 图1

图 16.5 应答信号时序


void Ackic()

{

SDA=0;

Delays(1);

SCL=1;

Delays(1);

SCL=0;

Delays(1);

SDA=1;

Delays(1);

}

//发送应答位子程序