求解释一下I2C的时序图,看的不是很明白,所以下面的起始信号和停止信号函数不是很明白啊 求解释一下下面的这两个函数,为什么要这样写啊?????
//产生IIC起始信号
void IIC_Start(void)
{
SDA_OUT(); //sda线输出//为什么要先写sda线输出
IIC_SDA=1;
IIC_SCL=1;
delay_us(4);
IIC_SDA=0;//START:when CLK is high,DATA change form high to low
delay_us(4);
IIC_SCL=0;//钳住I2C总线,准备发送或接收数据 //钳住I2C总线是什么意思
}
//产生IIC停止信号
void IIC_Stop(void)
{
SDA_OUT();//sda线输出
IIC_SCL=0;
IIC_SDA=0;//STOP:when CLK is high DATA change form low to high
delay_us(4);
IIC_SCL=1;
IIC_SDA=1;//发送I2C总线结束信号
delay_us(4);
}
求解答啊 菜鸟刚学,问题问得有点低级,请谅解啊!!
|