本帖最后由 bryanlee512 于 2015-7-10 16:21 编辑
最近在看郭天祥51的书 i2c里读一个字节 怎么理解
uchar readbyte()
{
uchar i,k;
SCL=0;
delay();
SDA=1;
for(i=0;i<8;i++)
{
SCL=1;
delay();
k=(k<<1)|SDA; //这句不理解了,运算结束后k值是否为一个独立位?还是一个字节?还有此时SDA为何值?由发送硬件决定?
SCL=0;
delay();
}
delay();
return k;
}
|