void write_iic(void)
{
uchar i;
SSPIF=0;
SEN=1;
while(!SSPIF); //死在这里了
//RB0=1;
SSPIF=0;
SSPBUF=0XA0; //write to,back /ACK
while(!SSPIF);
SSPIF=0;
SSPBUF=add; //send address to slave
while(!SSPIF);
SSPIF=0;
for(i=0;i<6;i++) //write six datas
{
SSPBUF=ee_data[i];
while(!SSPIF);
SSPIF=0;
}
PEN=1;
while(!SSPIF);
SSPIF=0;
// RB0=1;
}
运行的时候死在SSPIF上了,当启动SEN=1后,SSPIF没有置1;求解释。 |