This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

DAC7563: 输出电压异常问题

Part Number: DAC7563

使用dac7563,同一批板子,芯片供电是3.3v,与mcu 通信,上电初始化流程如下:

DAC7563_WRITE(0x28,0x0001);//Reset all registers and update all DACs (Power-on-reset update)
DAC7563_WRITE(0x30,0x0003);//LDAC pin inactive for DAC-B and DAC-A
DAC7563_WRITE(0x20,0x0003);//Power up DAC-A and DAC-B
DAC7563_WRITE(0x38,0x0001);//Enable internal reference and reset DACs to gain = 2

DAC7563_WRITE(0x18,1348<<4); //1.65v
DAC7563_WRITE(0x19,1348<<4);

测试发现下面异常问题:

1.部分板子输出参考电压异常,正常的板子参考电压为2.54v左右,不正常的为3.3V和2.7v左右

2.部分板子通道写入其中一个通道输出无反应,有的两个通道都没反应

3.部分板子通道都能写入,但是值异常,比如写入的1348对应输出电压值为1.65v左右,实际输出为800mv左右

  • 您好,

    1、内部参考电压是2.5V,最大误差是5mV,您实测参考电压为2.54V已经超出了这个范围,您是否将内部输出参考电压用作其他信号驱动?

    您实测供电电压正常吗?供电电压纹波大吗?

    部分板子出现此问题有可能是焊接的问题,也请检查板子上焊接是否良好,是否存在虚焊?

    2、这也可能是焊接的问题,所以请检查焊接情况;

    另外,也建议您用示波器查看下通信波形是否有干扰或时序是否正确?

    3、这也可能是焊接问题,也可能是通信问题,所以也请做这两方面的检查。

    写入1348是16进制数吗?这样的话对应的十进制数是4936,。使用内部基准2.5V,设置增益为2的话,输出根据以下公式可计算将近5V,这已经超出了3.3V供电时可以输出的最大范围AVDD。

  • 你好,1348是十进制的,

    //DAC7563 :MSB First,spi_software
    void DAC7563_WRITE(uint8_t cmd,uint16_t data)
    {
    	DAC8563_SYNC_H();
      Delay_us(100);
      DAC8563_SYNC_L();
    	
      DAC8563_SCLK_L();
      for(uint8_t s=0;s<8;s++)
      {
        if((cmd&0x80)==0x80){DAC8563_DIN_H();}
        else{DAC8563_DIN_L();}
        Delay_us(100);
        DAC8563_SCLK_H();
        Delay_us(100);
        cmd<<=1;
        DAC8563_SCLK_L();
      }
      for(uint8_t s=0;s<16;s++)
      {
        if((data&0x8000)==0x8000){DAC8563_DIN_H();}
        else{DAC8563_DIN_L();}
    		Delay_us(100);
        DAC8563_SCLK_H();
        Delay_us(100);
        data<<=1;
        DAC8563_SCLK_L();
      }
    	DAC8563_SYNC_H();
    }

  • 1348是十进制的话,对应的输出电压值确实为1.65V左右

  • 模拟spi 时序是否有问题

  • SPI时序符合DAC要求即可,因此可以使用其他接口模拟SPI时序。

    看您的异常现象都是部分板子出现的问题,因此有可能是硬件问题也可能是软件问题。硬件方面就是板子是否存在焊接问题或虚焊导致的板子不稳定。软件方面就是SPI时序是否正确、通信波形是否有干扰,检查此问题最有效的方法就是使用示波器查看SCLK、SYNC、DIN通信波形。