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.

dac8560使用方法

Other Parts Discussed in Thread: DAC8560, DAC8562

现在使用dac8560,电路图如图,使用端口模拟spi,现在问题是,初始化使用外部基准后,此时输出为0v,一旦往dac里写数据就输出3.3v,下图是信号时序,第一个图是写入指令,使用外部2.5v参考源,第三幅图是写入数字量转成对应的电压,写0输出是0,写其他值输出就是3.3,dac供电vout=3.3V

  • 经过调试发现我的时序不对,现在已经能够输出电压了,可是又发现新问题了,为什么我的参考电压是2.5V,可是我dac8560最大输出电压是1.25V求解答,发给dac8560的数字量已经是最大值了,可是电压仍然是1.25V

  • 之前是vfb和vout没连接到一起,现在已经连接到一起了,可是输出电压最大还是参考电压的0.5,1.25v

  • 碰到了同样的问题,还是时序的问题,注意,数据时下降沿写入。估计您也是少些了一个bit,变成了0x7FFF.

    附demo:

        DAC8560_SCLK_1_();
        DAC8560_SYNC_0_();
        
        for(i=0;i<8;i++)
        {
            DAC8560_SCLK_1_();
            if(com&0x80)
            {
                DAC8560_DIN_1_();
            }
            else
            {
                DAC8560_DIN_0_();
            }
            DAC8560_SCLK_0_();
            
            com<<=1;
        }
        
        for(i=0;i<16;i++)
        {
            DAC8560_SCLK_1_();
            if(dat&0x8000)
            {
                DAC8560_DIN_1_();
            }
            else
            {
                DAC8560_DIN_0_();
            }                          
            DAC8560_SCLK_0_();
            dat<<=1;    
        }

        DAC8560_SYNC_1_();   

  • 可以给我看看你的代码吗,我也遇到这样的问题,
  • 问题原因是写入时序错误。注意写入时序,下降沿写入。少写了一个1会导致 0xFFFF,变成0x7FFF。代码上面已经附上了。

  • 之前用单片机IO口模拟SPI 时序操作DAC8562都可以正常运行,程序没有太大改动(换了三个IO口)操作DAC8560居然没有成功。都不知道是不是芯片出了问题。