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.

[参考译文] DAC8771EVM:0V 至10V 电压输出模式的配置

Guru**** 2362840 points
Other Parts Discussed in Thread: DAC8771, DAC8775, DAC8760, DAC8565, DAC8771EVM
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/data-converters-group/data-converters/f/data-converters-forum/1511519/dac8771evm-configuration-for-0-10v-voltage-output-mode

Thread 中讨论的其他器件:DAC8565、DAC8771、 DAC8771EVM、DAC8775、DAC8760

您好 TI 支持部门、

我之前使用过 DAC8565、但由于需要0V 至10V 输出、我现在已经过渡到 DAC8771。 我知道 DAC8771支持电流和电压输出模式、但我的应用也支持 仅需要电压输出

硬件配置:

请验证以下连接是否适用于0V 至10V 电压输出:

  • PVDD : 12v

  • DVDD :3.3V

  • 基准电压 :10V (外部)

  • 降压/升压转换器 :内部转换器用于为模拟电路供电

2.您能分享一系列的命令(0-10V)意味着(选择降压/升压、配置、选择 DAC、CONFIG、编程)吗?

配置计划:

根据 DAC8771数据表、我计划初始化以下寄存器:

  1. DAC 配置寄存器(地址0x04)

    • 迭代 位[3:0] 0001对于0V 至10V 输出范围、请参阅。

    • 请确认的适当设置 位[15:4] —这些是否应保持默认值、或者电压输出模式是否需要特定值?

  2. DAC 数据寄存器(地址0x05)

    • 我打算写入0xFFFF该寄存器以产生满量程输出(10V)。 请确认是否正确。

补充说明:

还请您确认 如何确保将 DAC 配置为电压输出模式

请确认此配置是否正确、或者建议是否需要执行其他步骤



谢谢&&此致
Amara Rakesh

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Rakesh、


    我可以从原理图中看到您已查看 DAC8771EVM 用户指南。 如果您考虑使用此器件、我强烈建议仅在您希望使用的模式下使用 EVM 来测试器件。

    查看您的评论和问题、以下是您的一些答案。 首先、如果您为 DVDD 使用外部源、则应将 DVDD_EN 设置为接地。 如果 DVDD_EN 保持悬空、则启用用于为 DVDD 供电的内部 LDO。 基准电压应设置为5V、而不是10V。 我还会通过使用/RESET 引脚进行硬件复位来开始操作。

    将器件编程为输出10V、我首先要查看第8.4.3节"写入操作"(图103)、了解如何设置 DAC8771的典型操作。 此图显示了对器件进行编程的基本顺序。 下面是我要使用的顺序:

    • 选择将 Buck-Boost 寄存器(0x06)设置为0x0001
      选择 Buck-Boost
    • 将 Config Buck-Boost 寄存器(0x07)设置为0x061F
      用户可以写入 PCLMP/NCLMP 位
      将正负桥臂设置为±15V
      启用降压/升压正负桥臂
    • 选择设置为0x0020的 DAC 寄存器(0x03)
      将 CHA 设置为1
      启用 SDO
    • CONFIG DAC 寄存器(0x04)设置为0x1001
      使能输出
      将范围设置为0-10V
    • 将 DAC 数据寄存器(0x05)设置为0xFFFF
      将输出设置为+10V

    如果您要启用内部基准并打开复位配置寄存器(0x02)中的 POC 位、我会在按照上述顺序设置降压/升压寄存器(0x07)后执行此操作。

    如果您有任何其他问题、请告诉我。 如果您整理了原理图、您可以在此处发布以供审阅。


    Joseph Wu

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好:吴志伟:

    再次感谢您的快速答复。

    按照您的建议、EVM 送达后、我一定会立即使用、目前正在供货。

    关于我的问题:

    查看用户指南和您提到的命令后、我理解这一点 寄存器0x04 (配置 DAC) 用于选择输出模式 余弦值 输出代码 。 能否请您确认是否正确? 如果没有、请告知我配置输出模式的正确步骤。

    另外、我注意到原理图中有 IOUT 和 VOUT 的分离引脚 。 跳线、那么我的要求就是生成 5 mA (电流) 2 V (电压) "那有什么问题吗?

    要进行配置:

    • 对于电流模式(0–20 mA)、我使用了0x1006 Config DAC 寄存器中的命令。

    • 对于电压模式(0V–10V)、我使用了0x1001同一寄存器中的命令。

    请告诉我这是否正确、以及是否支持同时电流和电压输出。

    谢谢。此致、
    Amara Rakesh

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Rakesh、


    尽管 VOUT 和 IOUT 有单独的引脚、但它们无法同时输出。 CONFIG_DAC 寄存器用于选择电流或电压、但不能同时选择两者。 根据您写入的内容、我认为0x1006和0x1001值适合电流模式和电压模式。

    如果您需要同步电流和电压输出、您可以使用电压输出并创建一些具有两个运算放大器、两个晶体管和几个精密电阻器的电压/电流级。

    另一种方法是使用两个 DAC8771器件、或四通道 DAC8775器件的一半。 最后一种方法是使用 DAC8760、该器件根据单个 DAC 代码同时提供电流和电压输出。 后一种器件是类似的、但没有集成式直流/直流转换器。

    DAC8775: https://www.ti.com/product/DAC8775
    DAC8760: https://www.ti.com/product/DAC8760


    Joseph Wu

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Rakesh、

    精密电压至电流输出的原理图可在此处找到:

    https://www.ti.com/lit/slau502

    您需要将电流输出缩放到所需的值。

    Joseph Wu

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 Joseph Wu、

    我今天收到了 EVM 并开始验证。 但我观察到了零输出电压(VOUT)。 您能否帮助验证我的设置和连接? 非常感谢您的协助。

    当前配置:

    • 电源: 12V 连接到 PVDD/AVDD。

    • DVDD 电源: 为 DVDD 启用了内部 LDO。

    • 参考资料: ADC 的计量。

    • 通信接口: 将 SPI 与 MOSI、CS 和 SCLK 线路结合使用。

    • USB 连接: 不使用 USB 功能。

    问题:

    1. LDAC 和 RESET 引脚: 我的配置中是否需要这些引脚? 我是否应该以任何特定方式连接或控制它们?

    2. SPI 命令: 我已附加了我正在使用的 SPI 命令。 您能否请审核他们以确保其正确无误?

    观察结果:

    • 尽管采用上述设置、VOUT 仍保持在0V。

    请求:

    您能否验证我的连接和配置? 如果深入了解 VOUT 为什么可能为零、将会非常有帮助。

    感谢您的支持。

    此致、
    Amara Rakesh。




  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Rakesh、

    我唯一注意到的是您将0x0061写入 Config Buck Boost 寄存器、我想我将0x061F 写入。 进行该更改、看看它是否正确设置了 VPOS_IN 和 VNEG_IN 电源。

    我要确保/LDAC 始终为低电平、并且/RESET 始终为高电平。 它们不应保持悬空。

    您可以使用 SM-USB-DIG 检查 EVM。 EVM 应使用默认跳线设置、您可以在 EVM 运行中验证寄存器值。

    请检查 SPI 模式。 SPI 数据在 SCLK 的下降沿写入。 我认为使用示波器查看所有 SPI 线路的波形非常重要。 只是为了测试连接、应该尝试写入寄存器并读回。 这将验证您与 EVM 的通信连接。

    Joseph Wu

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 Joseph Wu、

      进行以下更改后、我验证了0–5V 和0–10V 范围的 DAC 输出:

    • 设置REF_EN中的位 复位配置寄存器 (地址= 0x02)

    • 已删除 JP4 跳线

    但是、我注意到以下行为、希望您予以澄清:

    1. 即输入基准电压 、输出电压读数约为 0.45V   其余 DAC 值不是0V、而是正常工作、这是在(0-5V)模式下观察到的。

    2. 对于(0-10V)模式、当 DAC 值为0时、电压读数  约为  0.18 V   而不是0V  
    3. 完成后重置 、输出电压约为 7.4mV  甚至在写入任何 DAC 值之前。

    您能解释一下为什么会发生这种情况吗? 如果需要、我可以详细分享所有寄存器配置和测试条件。

    此致、
    Amara Rakesh

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Rakesh、


    如何配置降压/升压转换器? 如果负极臂关闭、则输出可能无法接地。  当 VNEG_IN_x 为接地时、输出缓冲器使用接地作为负电源。 运算放大器将无法一直驱动到其负电源轨。 它可能很接近、但无法到达。

    是否将 EVM 与 GUI 配合使用? 不管怎样、请将您的配置发送给我。

    Joseph Wu

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 Joseph Wu、

    感谢您的支持。

    我想阐明关于当前设置的几点:

    1. 我将与连接 直接使用 MCU 生成 DAC 、不使用任何 GUI。

    2. 降压/升压转换器 会配置为同时提供这两者 输出电压:+15V 和-15V (即启用正负两个臂)。

    3. 降压/升压配置寄存器(0x07) 设置为0x021F、对应于以下设置:

      • CCPL 位= 00:完全跟踪模式下的降压/升压转换器(默认)

      • PCLm 位= 1000:正向夹紧限值设置为+15V

      • NCLM 位= 0111:负夹钳限值设置为-15V

      • PNSEL 位= 11:启用正负臂

    以下是我使用的完整 DAC 配置序列:

         SEND_DAC (0x06、0x0001);//选择降压/升压寄存器
         SEND_DAC (0x07、0x021F);//配置降压/升压
         SEND_DAC (0x02、0x0216);// poc 位、用于内部基准
         SEND_DAC (0x03、0x0020);//选择 CH1并启用 SDO
         SEND_DAC (0x04、0x1000);//启用输出并设置范围为0V 至10V
         SEND_DAC (0x05、0);//DAC 数据寄存器
      

    谢谢&&此致、
    Amara Rakesh。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Rakesh、


    我确实使用了 EVM 测试了这个序列、我认为这个序列应该可行。 注释和第五步中存在一个小问题、写入0x04的值应为0x1001、以便设置0V 至10V 范围(0x1000设置0V 至5V 范围)。 无论如何、器件仍应按照此顺序工作。 当我设置它并启用输出时、我得到的输出约为-160uV 左右。 设置 DAC 输出后、我确实得到了一些可能是由于基准精度导致的增益误差。 但是、我基本上得到了整个范围。

    如何将电源连接到设备? 您使用的电源电压是多少? 设置降压/升压电源后、您是否测量了 VPOS_IN 和 VNEG_IN 以查看它们是否被设置为+15V 和-15V? 您是否确保您的微控制器和 EVM 具有共同接地? 您是否尝试回读器件以查看写入器件的值是否已正确读回?


    Joseph Wu

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好:吴志伟:

    是的、我们验证了0V–5V 和0V–10V 范围、但我忘记相应地更新注释。

    µV 观察到的160 μ A 输出、您能否确认这是针对0V–5V 范围还是0V–10V 范围?
    µV 还观察到在0V 至10V 范围内大约有140 μ A 至160 μ A、这看起来不错。 但是、在0V 至5V 范围内、我们看到的大约为0.45V、这看起来是不正确的。

    我们使用的是直流电源。 我们测量了 VPOS_IN 和 VNEG_IN 电压、分别得到大约+15.2V 和-15.2V。 我们还确保连接了公共接地。

    下面我附上了精度表。 我就这样做了

              DAC 8771 (0V 至5V)
    PCLm 和 NCLM (+15V 和-15V)和(15mA)
    DAC 输出 DAC 输出
    预期(V) 实际值(V)
    0 0.468mV
    0.1 0.100
    0.2 0.2
    0.3 0.299.
    0.4 0.399.
    0.5 0.499
    0.6 0.599
    0.7 0.699
    0.8 0.798.
    0.9 0.898
    1. 0.998.
    1.1. 1.098
    1.2. 1.198
    1.3. 1.298.
    1.4 1.397.
    1.5 1.497.
    1.6 1.597.
    1.7 1.697
    1.8 1.797.
    1.9 1.896
    2. 1.986
    2.1. 2.076
    2.2. 2.166.
    2.3. 2.256
    2.4 2.395.
    2.5 2.495
    2.6. 2.595
    2.7 2.695
    2.8. 2.795.
    2.9 2.895
    3. 2.994.

    谢谢、
    Rakesh

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Rakesh、


    不过、您是否看到0V 至5V 范围内的零代码输出为0.45V 或0.45mV? 您在最后几个帖子中都使用过这两个选项。

    对我来说,我得到了大约-160uV 在0-10V 范围。 我返回并在两个范围内重新测试了器件。 我做了一些值接近零的额外测量,但我跨越了整个范围。 以下是基于输出代码的结果:

    0V 至5V 范围

    十六进制代码 小数 呈指数衰减
    0 0 0.00019 0
    100 256 0.019694 0.019531
    200 512 0.039197 0.039063
    400 1024 0.078224 0.078125
    800 2048 0.15631. 0.15625
    1000 4096 0.3125 0.3125
    2000 8192. 0.62478 0.625
    4000 16384 1.2493. 1.25
    6000 24576 1.8738 1.875
    8000 32768 2.4984 2.5
    A000 40960 3.123. 3.125
    C000 49152. 3.7475 3.75
    E000 57344. 4.3721 4.375
    FFFF 65535 4.9965 4.999924

    0V 至10V 范围

    十六进制代码 小数 呈指数衰减
    0 0 -0.00017 0
    100 256 0.038828 0.039063
    200 512 0.77827 0.078125
    400 1024 0.15587. 0.15625
    800 2048 0.31201. 0.3125
    1000 4096 0.62434 0.625
    2000 8192. 1.2488 1.25
    4000 16384 2.4977 2.5
    6000 24576 3.7465 3.75
    8000 32768 4.9954 5.
    A000 40960 6.2443 6.25
    C000 49152. 7.4933 7.5.
    E000 57344. 8.7423 8.75
    FFFF 65535 9.9907. 9.999847.


    Joseph Wu

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 Joseph、

    感谢您宝贵的时间和耐心。

    对于 DAC 0值、存在一些内部混淆。 是的、我们观察到0.473mV、这是正确的。

    感谢您的持续支持、宝贵信息和从一开始就快速响应。

    谢谢。此致、
    Rakesh Amara

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Rakesh、

    输出失调电压有点高、但在规格范围内。 对于电压输出、25°C 时的失调电压误差规格通常为0.65mV、但在整个温度范围内、最大值为5mV。 这列在第8页的数据表中:

    我认为在零代码附近输出没有额外的非线性、但您应该能够通过绘制代码与输出的关系图并检查范围内的值来检查这一点、但在接近零的情况下添加了几个额外的点。

    Joseph Wu