以下是修改后的程序,再次求助啊~~~
void Iic_write(void)
{
unsigned int urData;
rIICSTAT |=0x1;
//发送控制字
rIICDS=0xa0;
//rIICCON=0xaf;
rIICSTAT=0xf0;
while(rIICSTAT & 0x1);
//rIICSTAT|=0x1;
//发送地址
rIICDS=1;
rIICCON=0xaf;
while(rIICSTAT & 0x01);
//发送数据
rIICDS=1;
rIICCON=0xaf;
while(rIICSTAT & 0x01);
//结束发送
rIICSTAT=0xd0;
rIICCON=0xaf;
Delay(10);
}
void Iic_read(void)
{
unsigned int ReceveByte;
rIICSTAT |=0x1;
//发送控制字
rIICDS=0xa0;
rIICSTAT=0xf0;
while(rIICSTAT & 0x01);
//发送地址
rIICDS=1;
while(rIICSTAT & 0x01);
//发送控制字
rIICDS=0xa1;
rIICSTAT=0xb0;
rIICCON=0xaf;
while(rIICSTAT & 0x01);
//接收数据
Delay(10);
rIICCON=0x2f;
ReceveByte=rIICDS;
Uart_Printf("the ReceveByte is %d\n",ReceveByte);
//停止接收
rIICSTAT=0x90;
rIICCON=0xaf;
Delay(10);
}