AD5737使用问题。

      ADI的技术工程师们你们好!

      现在项目中打算采用这个芯片实现多路电流信号输出,自己做的板子电路和参考原理图上的类似,所有控制引脚都已经引出来,现在有下面的问题。

     1、现在使用的是官方AD5755中模拟SPI例程,读取设备的寄存器一直是0xFFFFFF,初始化流程如下:

      LDAC、CLEAR、RESET拉高->等待20ms->LDAC、CLEAR、RESET-拉低->等待20ms->RESET-拉高->SYNC、SCLK、SDIN拉高->等待20ms

     以上位初始化流程。

      然后通信实现读取DC-DC控制寄存器,发送函数与AD5755-1的程序一致,但是读取的数据一直位0xFFFFFF,命令中的设备号也是和实际配置一致,不清楚哪里的问题。

      希望能够得到帮助,先谢谢在座的各位。

     硬件连接应该是好的,在读取寄存器数据的前一个选择读取的寄存器的命令中,返回的数据有的位0xE00000,有的为0xF00000。

  • 现在已经基本可以驱动了,调试过程中遇到的问题分享一下。

  • 问题已经找到,是引脚虚焊导致。但是调试过程有其他问题。1:当使用同一个SPI驱动两块芯片时(设备ID未1和2),写数据都是正常的,读数据只有id号为1的是正常的,其他的就不正常,正常的改为2,不正常的改为1,然后读取,之前正常的2也不正常了,相反之前不正常的2正常了,综上就是必须ID号为1的设备才可以读写正常,哪怕是两个SPI分别驱动也是这样,很奇怪的现象,没有在官方手册上找到相关说明。2:另外一个问题就是重写输出寄存器不能正常更新输出,无论设置为数据多少就只有默认的最低电流输出,只有在刚上电初始化的时候设置的电流才可以正常输出。我确认LDAC是拉低的,另外写数据的SYNC引脚在写之前拉低,写之后拉高,按照手册上所述,当LDAC为一直0时,输出应该在SYNC的上升沿进行更新。也是很奇怪的现象。