ADI 技术
直播中

秦伙茂

7年用户 188经验值
私信 关注
[问答]

请问AD7705的DRDY为什么一直是高电平?

AD7705的DRDY一直是高电平,一直没有变成低电平,下面是我的初始化程序,在while(DRDY_get)语句一直出不去了,求帮忙看看是什么问题,谢谢!
  void init_7705(void)
{   
    SCLK_H;      //串行时钟置一
    DIN_H;     //串行数据置一
   
    write_7705(0x20);   //通道0,选择时钟寄存器
    write_7705(0x02);   //转换速率100HZ   
    write_7705(0x10);   //通道0,选择设置寄存器
    write_7705(0x00);   //自校准1倍 双极性
   
    DRDY_in;
    while(DRDY_get)
    {
     delay(100);
    }                 //等待drdy变低
    DRDY_out;
}

void write_7705(unsigned int cmd)
{
    unsigned int i;   
    DIN_H;
    SCLK_H;   
    for(i=8;i>0;i--)
    {
        SCLK_L;                
         if(cmd&0x80)
        {
            DIN_H;
        }
        else
        {
            DIN_L;
        }        
        SCLK_H;
        cmd<<=1;
    }   
    DIN_H;
}

回帖(2)

秦伙茂

2018-9-30 14:39:11
已经解决。
举报

王雪

2018-9-30 14:44:26
引用: faceCa 发表于 2018-9-30 15:08
已经解决。

最后是什么问题?
举报

更多回帖

发帖
×
20
完善资料,
赚取积分