FM收发实验中,调用完函数RDA5820_RD_Reg(RDA5820_R00)后,读到的id=0xFFFF,而执行进去RDA5820_RD_Reg(RDA5820_R00)后。读取对

2019-07-20 07:55发布

调用完id=RDA5820_RD_Reg(RDA5820_R00);函数后id=0xFFFF,而执行进如下函数:
u16 RDA5820_RD_Reg(u8 addr)
{
        u16 res;
  IIC_Start();                            
        IIC_Send_Byte(RDA5820_WRITE);                 
        IIC_Wait_Ack();          
  IIC_Send_Byte(addr);                          
        IIC_Wait_Ack();                                                                                                              
  IIC_Start();                            
        IIC_Send_Byte(RDA5820_READ);                                              
        IIC_Wait_Ack();                                
        res=IIC_Read_Byte(1);                               
  res<<=8;
  res|=IIC_Read_Byte(0);                                                                       
  IIC_Stop();                                       
        return res;                                               
}


后返回的res=0x5805,是正确的,这是为什么那?
调用函数不正确,而执行进去函数确实正确的,求助

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