电路设计论坛
直播中

王玲

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

AD7765数据输出口SDO输出为什么全是1?

按照芯片资料写的读时序函数,但不知为什么数据输出全是1,是不是得先对AD控制寄存器进行写操作?
用示波器测得读时序和SDO电平如下图

u32 ADC_Read(void)
{
           u8 i;
           u32 temp = 0;
   SCK = 0;
   delay_us(5);
           FSO = 1;
   SCK = 1;
   delay_us(5);
   SYNC = 0;
           SCK = 0;
           delay_us(5);
           SCK = 1;
           delay_us(1);
           FSO = 0;
           for(i=0;i<32;i++)
           {
                     delay_us(5);
                     SCK = 0;
                     temp<<=1;
                     if(SDO==1)
                               temp|=0x01;
                     else
                               temp =~0x01;
                     delay_us(5);
                     SCK = 1;
           }
           delay_us(1);
           FSO = 1;
           return temp;
}

更多回帖

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