请教:IIC读SM9541数据问题

2019-07-21 07:10发布

本帖最后由 北宸xyz 于 2016-7-21 20:53 编辑

采用IIC读写24C02的程序修改为读SM9541数据。
IIC读写24C02正常,把24C02芯片拆了,接上SM9541,采用跳线方式连接。

读数据代码:
u16Pressure 这个数据读回来值都是0xFFFF;
这个值 肯定是不对的。
u16Pressure = SM9541_ReadOneByte();

u16 SM9541_ReadOneByte(void)
{                                 
        u8 temp=0;
        u16 ReTemp=0;        
        IIC_Start();  
        IIC_Send_Byte((0x28<<1)+1);   //发送器件地址0X28<<1,读数据         
        IIC_Wait_Ack();
        temp=IIC_Read_Byte(1);        //发送ACK         
        ReTemp = temp<<8;        
        temp=IIC_Read_Byte(0);        //发送nACK            
        ReTemp = ReTemp + temp;        
        IIC_Stop();//产生一个停止条件            
        return ReTemp;
}


1.png
2.png
这个帖子我也看了
http://www.openedv.com/forum.php?mod=viewthread&tid=77527




友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。