SPI多机通信
我现在想用两台单片机上进行SPI的多机通信,可收发,用到四根线SDO,SDI,EN,SCK、
我是这样进行假设的、
主机发送一个数据的8位、每个时钟上升沿开始发送数据、8个时钟后数据发送完毕
从机的话是如何进行接收的呢?(主机发送的8位数据不可能是全部存在了SDO上面的吧)、那么从机是检测每来一个时钟进行一次数据的存储了吗?那这样的话,从机的sck线是不是要设为输入状态了呢?
感觉发送很容易
void send(unsigned char date)
{
en=1;
_delay(10);
en-0;
sck=0;
for(int i=0;i<8;i++)
{
sdo=date&0x80;
sck=1;
_delay(10);
date<<=1;
sck=0;
}
}