找回密码
 注册
搜索
查看: 496|回复: 0

[讨论] 求助 MCU通过IIC连续读取认证IC数据有问题?

[复制链接]
发表于 2008-8-21 21:44:48 | 显示全部楼层 |阅读模式
单片机是C8051F310,被控器为iPod的认证IC;通过IIC通信,现在单个读正常,可是连续读数据,读出的内容不对
例如:0x04 寄存器对应4个连续字节,内容为 0x00000200, 读出为0x0FFFFFFF,代码如下。
请高人多多指点:
unsigned char block_Counter;[52RD.com]
Iic_Start ();  //启动[52RD.com]
Iic_Sent_8_Bit (iic_Device_Address);  //发送器件地址[52RD.com]
if (F0 == 0)[52RD.com]
{[52RD.com]
  return (0);[52RD.com]
}[52RD.com]
Iic_Sent_8_Bit (iic_Address);  //发送器件子地址[52RD.com]
if (F0 == 0)[52RD.com]
{[52RD.com]
  return (0);[52RD.com]
}[52RD.com]
Iic_Stop ();  //释放[52RD.com]
Delay (1100);  //大于200US[52RD.com]
Iic_Start ();  //启动[52RD.com]
Iic_Sent_8_Bit (iic_Device_Address + 1);  //发送器件地址和读取标志[52RD.com]
if (F0 == 0)[52RD.com]
{[52RD.com]
  return (0);[52RD.com]
}[52RD.com]
for (block_Counter = 0; block_Counter < (iic_Data_Num - 1); block_Counter ++)  //读取数据[52RD.com]
{[52RD.com]
  *iic_Data_Point = Iic_Receive_8_Bit ();
  Iic_Ack (0);[52RD.com]
  iic_Data_Point ++;[52RD.com]
}[52RD.com]
*iic_Data_Point = Iic_Receive_8_Bit ();
Iic_Ack (1);[52RD.com]
Iic_Stop ();  //释放
高级模式
B Color Image Link Quote Code Smilies

本版积分规则

Archiver|手机版|小黑屋|52RD我爱研发网 ( 沪ICP备2022007804号-2 )

GMT+8, 2025-2-27 14:04 , Processed in 0.053306 second(s), 17 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表