求助:dac7612输出电压不稳定的问题

2020-01-20 19:03发布

大家好,最近在忙一个数模转换的东东,用到了一片dac7612,双通道输出,12bit  ,我用单片机进行的控制,控制信号如下图所示,示波器中显示良好,图显示的是输出128.也就是0.128mv,dac7612没有加负载什么的,然后测试输出口,电压值不知为什么不稳定,请大家帮忙看看,帮我找一下原因,

示波器显示的数据 (原文件名:p_large_dWtm_4e610000000d5c41.jpg)


(原文件名:p_large_NAcX_34b2000000205c3f.jpg)


(原文件名:时序.png)


(原文件名:时序一.png)

附c程序代码
void AnalogOutput(bit  lbch ,unsigned int da_data){

  unsigned char lucBitNum;  
  EA = 0;  
  da_data = da_data<<2;
        if(!lbch){
        // ch A
        da_data |= 0x8000; // A1 = 1;
        da_data &= 0xBFFF; // A0 = 0;
       
        }else{
        // ch B
        da_data |= 0xC000;
        }// A1 = A0 = 1;
      LOADDA = 1;
          delay_us(15);
      da_cs=0;
          delay_us(15);
    for(lucBitNum=0;lucBitNum<14;lucBitNum++)
        {

            DA_CLK=1;
                DA_SDI = da_data & 0x8000;  
                delay_us(15);
            DA_CLK = 0;  
           delay_us(15);
           da_data= da_data<<1;
    }
          da_cs=1;
          delay_us(15);       
      LOADDA=0;  
          delay_us(15);
          LOADDA=1;  
          delay_us(15);
          EA=1;
}
void  main()
{       
        while(1)
        {

                 AnalogOutput(0,128);
                  while(1) ;
                }                         
}
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
5条回答
liyx1989
1楼-- · 2020-01-20 23:16
不稳定的情况是输出口电压一直跳动,从0.5到3v,没有规律··
换了另一个口也是这样的情况
电路设计只是一片dac7612,电源地都测试良好
lylatyou
2楼-- · 2020-01-20 23:29
我用51驱动这个片子,一次成功了,电压没有你说的那么大的变化,跳动非常小。注意LD在发送SDI数据的时候必须为1,SDI发送完毕,时钟停止后,LD才能设定为0。

以下是我的代码,你参考下。

VOID CODEFOR7612(UNSIGNED INT DATA,CHAR ADDR)   
{   
    SCK=1;
    LD=1;
    CS=0;
    DATA=(DATA&0XFFF)|ADDR;   //ADDR 只能是 0X00或者 0X02
    FOR(I=13;I<=0;I--)
    {
        SDI=DATA&(1<<I);
        SCK=0;
        DELAY();
        SCK=1;
        DELAY();
    }
    LD=0;
    DELAY();
    LD=1;
    DELAY();
    CS=1;
}

VOID DELAY()
{
    CHAR CNT=12;
    WHILE(CNT--);
}
fjs
3楼-- · 2020-01-21 00:40
 精彩回答 2  元偷偷看……
zspzwal
4楼-- · 2020-01-21 04:46
lylatyou 发表于 2011-7-26 23:25
我用51驱动这个片子,一次成功了,电压没有你说的那么大的变化,跳动非常小。注意LD在发送SDI数据的时候必 ...

借用一下,嘿嘿
zspzwal
5楼-- · 2020-01-21 05:43
lylatyou 发表于 2011-7-26 23:25
我用51驱动这个片子,一次成功了,电压没有你说的那么大的变化,跳动非常小。注意LD在发送SDI数据的时候必 ...

这个有问题吧,看一眼for循环的条件0.0、、、

一周热门 更多>