LSB MSB接收、发送

char Data = 0; //放置接收的数据
for(char i = 0; i < 8; i++)  //MCU LSB接收数据组 字节
{
  Data >>= 1;  //先移位
  if(GPIO)
    Data |= 0x80;
}

for(char i = 0; i < 8; i++)  //MCU MSB接收
{
  Data <<= 1;
  Data |= GPIO;  //读取GPIO上的值 0 or 1
}

char value = 0xFF;  //MCU需要发送的数据
for(char i = 0; i < 8; i++)//MCU LSB发送
{
  GPIO = value & 0x01;
  value >>= 1;  //后移位
}

for(char i = 0; i < 8; i++)//MCU MSB发送
{
  GPIO = (value & 0x80 == 0x80);
  value <<= 1;
}

你可能感兴趣的:(LSB MSB接收、发送)