大学生
最后登录1970-1-1
在线时间 小时
注册时间2014-1-7
|
小弟遇到一个问题,请各位大神指教:
我用硬件IIC操作24C128没问题,但操作时钟芯片就不行了。。
时钟芯片(SD2200)的地址是这样的:
D7 D6 D5 D4 D3 D2 D1 D0
0 1 1 0 C2 C1 C0 R/W
读数据:
while(I2C_GetFlagStatus(I2C1, I2C_FLAG_BUSY));//等待I2C空闲
I2C_GenerateSTART(I2C1, ENABLE);
while(!I2C_CheckEvent(I2C1,I2C_EVENT_MASTER_MODE_SELECT));
I2C_Send7bitAddress(I2C1,0x65,I2C_Direction_Transmitter);//读数据1寄存器,0x65为数据寄存器
while(!I2C_CheckEvent(I2C1,I2C_EVENT_MASTER_TRANSMITTER_MODE_SELECTED));
I2C_Cmd(I2C1, ENABLE);
I2C_GenerateSTART(I2C1, ENABLE);
while(!I2C_CheckEvent(I2C1,I2C_EVENT_MASTER_MODE_SELECT));
I2C_Send7bitAddress(I2C1,0x65,I2C_Direction_Receiver);//读数据1寄存器
while(!I2C_CheckEvent(I2C1,I2C_EVENT_MASTER_RECEIVER_MODE_SELECTED));
……
……
……
这样卡在第5行,地址检测。。改为0x64也测试过不行。。
|
|