I2C通讯
时间:10-02
整理:3721RD
点击:
void sendbite(unsigned char byte) //发送一个字节数据{ unsigned char i; TRISBbits.TRISB4 = 0; //输出 TRISBbits.TRISB5 = 0; for (i=0; i<8; i++) //8位计数器 { if((byte<<i)&0x80) //左移 {innSDA=1; SDA=innSDA; } else {innSDA=0; SDA=innSDA; } Delay5us(10); innSCL=1; SCL =innSCL; //拉高时钟线 Delay5us(10); //延时 innSCL=0; SCL = innSCL; //拉低时钟线 Delay5us(10); //延时 }我对如何进行传送的位不是很理解,请哪位大神讲解下啊,特别是这步 if((byte<<i)&0x80) ,初学