电路设计论坛
直播中

mintsy

8年用户 1384经验值
擅长:MEMS/传感技术
私信 关注
[问答]

AD7124-8 SPI通信不正确是什么原因造成的?

单片机是AVR的 xmega64,主频2M,4线的SPI接口直接和单片机的IO口相连。SPI通信协议采用IO口模拟的方式,SPI_SCK肯定没有超过5MHz。
      然后只是为了验证SPI接口的通信,上电后只对AD7124-8连续写了8个0xff,使其复位,没有进行其他类似初始化的操作。然后读取ID寄存器,先在SDIN上写0x45,然后就读取SDOUT的值。一个while(1)中一直进行读取寄存器操作,发现这个值不是固定的0x14,误码很多。如何每次读取延时10ms的话,误码少一些。通过示波器发现,当SCK全部拉高的情况下,SDOUT还有高低电平的变化,这个不知道是否正常。
      找了几天不知道是什么原因,硬件电路上有个小小的bug,就是REGCAPD和REGCAPA这两个管脚悬空了,没有接去耦电容,会不会是这个原因?还有就是用万用表量REGCAPD这个管脚,电压在2.0V左右。看器件手册,应该是1.8V。
      求大神们分析一下原因,帮帮忙,跪谢!!!

                  

更多回帖

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