已回答假定已回答

AD7684数据读取问题

mjq 在 2017-12-4 詢問的問題
最後回覆由StevenX於2017-12-12提供

AD7684按手册操作,DCLOCK经过5个下降沿之后,DOUT开始传输数据,但是MCU检测到DOUT一直为低电平,请问有没有遇见相同问题的,下面是驱动程序

uint16_t read_ad7684(void)

{

    uint8_t i;

    uint16_t dat=0;

    AD7684_CLK_H;

    AD7684_CS_H;

    delay_us(100);

    AD7684_CS_L;

    delay_us(100);

    for(i=0;i<6;i++)

    {

         AD7684_CLK_L;

        delay_us(10);

        AD7684_CLK_H;

        delay_us(10);

   }

   if(AD7684_DOUT==0)

   {

       for(i=16;i>0;i--)

       {

            AD7684_CLK_L;

            delay_us(10);

            AD7684_CLK_H;

            delay_us(10);

            if(AD7684_DOUT==1)

                 dat=dat|(1<=(i-1));

       }

  }

  AD7684_CLK_H;

  delay_us(10);

  AD7684_CLK_L;

  delay_us(10);

 

  AD7684_CS_H;

  delay_us(200);

  return dat;

}

結果