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.

DAC8771使用电压异常

Other Parts Discussed in Thread: DAC8771

在使用DAC8771这款芯片的时候 使用的电路原理图如下 (使用内部DVDD,VPOS和VNEG使用buck-boost供电)。

问题1:我上电的时候,VPOS电压+3.3V,VNEG+0.43V.我看了DAC8771数据手册的7.3节 正常电压VPOS-0.3-------+33V。VNEG电压-18V-------0V。这里可以判断出电路有问题吗?

问题2:我只要打开DAC输出通道;VOUT输出电压一直是3.0V左右。调节0x05数据寄存器的值电压输出不会变

问题3:DAC8771我已经成功通信,可以往寄存器写数据并且将寄存器的值读出来。但是我读0X11设备ID寄存器的时候读出来全是零

问题4:出来量VPOS和VNEG电压 还可以在哪看出硬件说有问题?

谢谢大家指导一下小弟  小弟万分感谢。

  • 在使用DAC8771这款芯片的时候 使用的电路原理图如下 (使用内部DVDD,VPOS和VNEG使用buck-boost供电)。

    问题1:我上电的时候,VPOS电压+3.3V,VNEG+0.43V.我看了DAC8771数据手册的7.3节 正常电压VPOS-0.3-------+33V。VNEG电压-18V-------0V。这里可以判断出电路有问题吗?

    问题2:我只要打开DAC输出通道;VOUT输出电压一直是3.0V左右。调节0x05数据寄存器的值电压输出不会变

    问题3:DAC8771我已经成功通信,可以往寄存器写数据并且将寄存器的值读出来。但是我读0X11设备ID寄存器的时候读出来全是零

    问题4:出来量VPOS和VNEG电压 还可以在哪看出硬件说有问题?

    谢谢大家指导一下小弟  小弟万分感谢。

  • 您好,
    您的图片是原理图吗,没有显示,您可以使用回复对话框右下角“使用高级编辑器编辑文本”重新上传图片吗
    您的各供电电压如果在原理图了没有显示,您可以详细说明一下吗
  • DAC8771设计的原理图发到上面了 现在我极大怀疑是硬件问题。英文负臂电压也就是VNEG电压 在我发的原理图上C27 C27 2 端电压是+0.43V 数据手册7.3节上面说这应该是负电压。
  • DAC8771设计的原理图发到上面了 现在我极大怀疑是硬件问题。英文负臂电压也就是VNEG电压 在我发的原理图上C27 C27 2 端电压是+0.43V 数据手册7.3节上面说这应该是负电压。
  • 您好  这是硬件工程师设计的原理图  :。. 

    1)我使用内部DVDD( 在原理图中RD1短接 ,RD3悬空)。

    2)CLR和LDAC接地 也就是联上了RD17,RD19

    3)REASE连上DVDD 也就是连上RD4,RD11连上DVDD(内部输出DADD)

    4)RD9 RD10 RD6都连上了0R的电阻

    5)我上电量电容C22端电压(VPOS)3V   电容C27电压(VNEG)0.47V,在DAC8771 7.3节中说了VNEG应该是-18----0V

    6)使用的是STM32F1为主控芯片 读出来状态寄存器0x0B的第7位(PG)为0,上面也没有说0代表电源是好还是坏。

    4744.气动控制驱动控制V2.0.pdf

  • 1、使用内部DVDD的话,DVDD_EN 不能接地,可以悬空
    2、使用内部基准电压,确认是否正常输出?
    3、ALARM是OD管脚,需要接10K上拉电阻
    4、CLR引脚是高电平输入有效,正常工作时应为低电平
    5、reset接高电平建议串10K电阻
    6、VSENSEP引脚用于实现负载感应,RD6建议焊接上
    0X11上电默认即是0x0000
    异常时状态寄存器的值是怎样的?
  • 1:DVDD_EN是悬空
    2:DVDD输出5.08V
    3:没有用到ALARM
    4:CLR我这里直接接地
    5:reset直接接了DVDD
    5:RD6焊接上了 ,
    6:0x11读出来的是0
  • 6:状态寄存器 0x0B读出来的是5888 也就是0001 0111 0000 0000
  • 1)原理图设计有问题吗
    2)SPI通信是成功的,是发送的指令错误了吗
    3)发送指令过程如下:
    a:0x03第5位写入1 打开DAC通道A
    b:0x02第4位写入1使用内部参考电压
    c:0x06第0位写入1使用BUCK电源
    d:0x07的【1:0】写入3 征服臂启用,【5:2】写入2负臂电压-9V,【9:6】写入3正臂电压+9V
    e:0x04的【3:0】写入1使用电压输出,范围0-10V,12位写入1使能DAC
    4)调整0x05数据寄存器的值 发现输出的电压一直是3.0V .关闭通道A输出的电压是0V。
    5)发现只要打开通道A 使能DAC VOUT的电压就是3V左右。
  • 1)原理图设计有问题吗,原理图在附件上
    2)SPI通信是成功的(往寄存器写进去的值可以正确读出来),是发送的指令错误了吗
    3)发送指令过程如下:
    a:0x03第5位写入1 打开DAC通道A
    b:0x02第4位写入1使用内部参考电压
    c:0x06第0位写入1使用BUCK电源
    d:0x07的【1:0】写入3 征服臂启用,【5:2】写入2负臂电压-9V,【9:6】写入3正臂电压+9V
    e:0x04的【3:0】写入1使用电压输出,范围0-10V,12位写入1使能DAC
    4)调整0x05数据寄存器的值 发现输出的电压一直是3.0V .关闭通道A输出的电压是0V。
    5)发现只要打开通道A 使能DAC VOUT的电压就是3V左右

    6)硬件连接如下:

        a:refout和refin短接,DVDD_EN 悬空,RD11链接DVDD,使用内部DVDD

        b:resret接DVDD,CLR和LDAC接地。

    7)VPOS自己量的电压(3.3V左右),VNEG(+0.43左右);参考DAC8771数据手册7.3节,VPOS范围(-0.3V----+33V)VNEG电压输出模式(-18V------5V)是        否表示电路不正常。

    8)读取状态寄存器0x0B的值是5888,也就是0001 0111 0000 0000 ,PG位是0,表示电源是好还是坏

    9)有没有什么更好方法证明是硬件问题

    10)软件有没有驱动程序,我是按照8.4.4步骤编写驱动

    11)感谢大家指导2844.气动控制驱动控制V2.0.pdf

       

        

  • 我不太明白您说的状态寄存器 0x0B读出来的是5888 还是0001 0111 0000 0000即0x1700?
    寄存器是否能正确写入,最好的验证方法就是写入后再读出来,看是否与写入的一致
    内部参考电压是否正确输出?
    测试时后端接的什么负载
  • 5857.气动控制驱动控制V2.0.pdf1)我写进去的值都可以正确读出来

    2)读出来的数据5888就是0x1700;

    3) 内部参考电压我量出来的是0.26V

    4)0x02寄存器的第4位REF_EN写1  是表示内部参考电压打开吗?

    5)还没有接负载

    6)原理图如下 ,要量内部参考电压是量RD1和地的压差吗

    7)原理图是否正确?

  • 4)和 6)是的,使能内部参考电压REF_EN写1,是测量REFOUT至地之间的电压。
    如果0x02寄存器的第4位REF_EN已经正确写1,而内部参考电压输出的是0.26V,那么请确认芯片各部分供电都正常
    如果芯片各部分供电都正常,那么很可能是芯片已损坏

    7)原理图我已在上面的回复中与您确认,其他地方我没看出哪里有问题,您也可以和DAC8771 EVM板中的原理再进行详细比对检查,DAC8771 EVM板:www.ti.com.cn/.../slau727.pdf
  • 1)硬件上面我量的VENG端电压是0.47V,DAC8771数据手册7.3节说在电压模式下应该是-18V ---- -5V,这应该是负电源
    2)我在软件上读取0x07的值发现读出来的是540也就是 0010 0001 1100,这个值负臂电源是-15V(default)应该是默认值
    3)接着我试图把0x07的【5:2】写入2改成-9V结果修改不了,读出来的还是540
    4)0x07我的配置是开启正负臂,正电压+9V,负电压-9V(这个修改不了一直是0111,也就是-15V)。
    5)芯片DVDD输出5V,REF输出5V。VPOS输出3.3V,VNEG输出0.47V
    6) 总结硬件就是负臂电压异常,软件上修改不了负臂电压的值,
  • 还有一个疑问0x06寄存器 写1表示启动buck---boost给VPOS和VNEG供电吗,写0表示关闭电源 ,必须要外部给VPOS和VNEG供电。
    我现在将0x06写0 还是可以量到VPOS和VNEG的电压,我也没有使用外部电源。不知道是不是这样理解寄存器的?希望能得到帮助
    谢谢
  • 1)现在可以调节输出的电压 ,但是我只要开启DAC 输出端口就有1V的电压,也就是电压不能清0

    2)我选择的是0x04写入的的【3:0】写入1,此时量程是10V,此时我将0x05写入65535还是5V,也就是量程没有改变

    3)在寄存器的0x04中出现下面一句话

                 Range, Please note that upon changing the range, the  output changes based on CLSLA (Address 0x03)请注意,在更改范围时,DAC输出基于CLSLA(地址               0x03)进行更改),不太理解其中的意思。我将0x03的CLALA写1,发现电压输出一直是1V,调整0x05寄存器的值也不改变输出
                         

  • 1)我配置的是电压输出模式,量程0---10V,使用内部DVDD,内部BUCK电源供电给VPOS和VNEG。

    2)DAC电压输出模式下,我关闭了基准电压,也就是0x02的第4位。结果VOUT还是输出1V的电压,此时调整DAC的输出结果输出保持不变

    3)我开启了基准电压,也就是0x02的第4位,在0--1V,VOUT输出不受数据寄存器控制,在1---5V可以成功调节。

    4)我选择的量程是10V,结果最大输出只有5V。

    5)0x04的寄存器的【3:0】

    Range, Please note that upon changing the range, the output changes based on CLSLA (Address 0x03)范围,请注意,在更改范围时,DAC输出基于CLSLA(地址0x03)进行更改),这句话的意思不是太清楚。
    6)总结:为什么关闭了基准电压还是会有输出?为什么选择的量程是0--10V结果输出的最大电压只有5V。
  • 1)也就是说现在您的buck---boost电路工作正常了,是吗
    2)DAC寄存器写入0,输出是什么呢
    3)CLSLA=1是相当于输出了一个直流成分,即输出范围的一半,在CLSLA=1,我认为是不可以0x05写入65535,这超出了其输出范围
    您将CLREN使能,然后将CLR 置1,看输出是多少
  • 1)buck---boost电路是内部,这么判断它是否工作正常,我读取了状态寄存器的PG位读出来是0,但是我量负臂电压VNEG一直是+0.47V
    DAC8771数据手册上7.3说VNEG范围在电压输出模式下是-18V----5V,这是否说我的BUCK工作是不正常的,
    2)DAC通道只要打开就会有1V电压输出,在0--1V不可调节,但是1-5V,是可以调节的
    3)CLSLA我写的是0,只要写了1,我的芯片就会异常发烫,CLR这一位我试图写1,但是发现我读出来的一直是0,
    4)寄存器0x02中的CLR位和DAC8771芯片的43管脚有联系吗(硬件上我是直接接地)。
  • 寄存器0x02中的CLR位和DAC8771芯片的43管脚CLR是一样的功能,一个是软件CLR一个是硬件CLR,硬件上接地对软件CLR没有影响。
    我感觉您现在的调试思路比较乱,心态也比较着急,但这对调试电路没有帮助,所以请耐心一点,一步一步去解决问题。buck---boost电路是芯片的供电电源,供电电压正常了,其他功能才有可能正常工作,需先把buck---boost电路调试正常了,再去设置芯片的其他参数设置。
    首先需能够正确配置寄存器,然后按照数据手册图 103流程配置寄存器