打印

stm32F769 IIC与WM894通讯,读ID异常

[复制链接]
339|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
第十代火影|  楼主 | 2018-7-10 20:10 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
stm32F769 IIC与WM894通讯,读ID(16位)异常,读高八位第一个字节正常0x89,但是读第二个字节始终为0x00,代码如下:
uint8_t WM8994_Read(uint16_t Chip_ADD,uint16_t Reg_Add,uint16_t *Read_Data)
{
uint8_t ak;
uint8_t Reg_Add_H,Reg_Add_L;
uint8_t Temp_Chip_ADD;
Reg_Add_H =        (uint8_t)(Reg_Add>>8);
Reg_Add_L =        (uint8_t)(Reg_Add);        
//Temp_Chip_ADD = Chip_ADD<<1;
Temp_Chip_ADD = Chip_ADD&0xFE;
flag=Temp_Chip_ADD;

IIC_Start();

IIC_Send_Byte(Temp_Chip_ADD|0x00);

ak=IIC_Wait_Ack();
  
if(ak==1)
{
return KO;
}

IIC_Send_Byte(Reg_Add_H);

ak=IIC_Wait_Ack();

if(ak==1)
{
return KO;
}

IIC_Send_Byte(Reg_Add_L);

ak=IIC_Wait_Ack();

if(ak==1)
{
return KO;
}

//IIC_Stop();

IIC_Start();

IIC_Send_Byte(Temp_Chip_ADD|0x01);

ak=IIC_Wait_Ack();

if(ak==1)
{
return KO;
}

Read_Data[0]=IIC_Read_Byte(1);        

Read_Data[1]=IIC_Read_Byte(0);        

IIC_Stop();

return OK;

使用特权

评论回复

相关帖子

发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

363

主题

363

帖子

0

粉丝