//------------------------初始化结束----------------------------------------
error = 0; // 通讯失败计数
P2=0x1e;
LED1 = 1; // 关闭LED
LED6 = 1;
while (1)
{
SMB_DATA_OUT =0x55; // 定义要发送的数据
TARGET = F310_SLAVE; // 从机地址
SMB_Write();
TARGET = F310_SLAVE;
SMB_Read(); //SMB_Write();
if(SMB_DATA_IN != SMB_DATA_OUT)
{ error++;
LED1 = (!LED1); // 接收到错误LED1灯灭
}
else LED6=(!LED6); // 接收数据正确LED6灯灭
}
C8051F340做主机,C8051F390做从机,进行I2C通信,发8位数据。
主机主程序中的这一段怎么实现数据的发送?如果能够发送,数据是不是储存在从机的SMBus数据储存器中? |