lpc2220的i2c读写问题:
程序写操作的时候中发送开始操作没有问题,但是发送从机地址的时候就发现从机没有应答,拿别人一样的代码,放进去一样的结果,总是从机没有应答,但是用别人的工程和代码,是正确的,然后把全部别人的代码,但是还是一样的结果,发送从机地址的时候就发现从机没有应答。感觉很奇怪,别人的代码和我一模一样,但是总是不行,但是不知怎么的,发现我的程序有可以了,本人才刚学,还是菜鸟,希望高手帮小弟解决!谢谢!
/**************发送起始信号******************/
//清除标志
I2CONCLR = aa | si | sta ;
//发送开始信号
I2CONSET = sta;
//等待标志位置1
while((I2CONSET & si) == 0);
//返回状态值
if(I2STAT != 0x08)
{
I2CONSET = sto;
return I2STAT;
}
/**************发送从机地址:写模式******************/
//清除标志
I2CONCLR = si | sta;
//发送从机地址
I2DAT = (addr&0xfe);
//等待标志位置1
while((I2CONSET & si) == 0);
//返回状态值
if(I2STAT != 0x18)
{
I2CONSET = sto;
return I2STAT;
}
i2c.zip
(1.55 KB)
(下载次数: 6, 2012-7-15 20:40 上传)