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:首次使用 EVM 进行测试、DAC8771使用 DIG_Supply 5V 和其他问题时很热门

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

https://e2e.ti.com/support/data-converters-group/data-converters/f/data-converters-forum/1262432/dac8771evm-first-testing-with-the-evm-dac8771-is-hot-with-dig_supply-5v-and-other-question

器件型号:DAC8771EVM
主题中讨论的其他器件:DAC8771

尊敬的先生:

我现在使用 EVM、12V 输入电源、输出4 -20mA 进行第一次测试。 触摸 DAC 后、显示选中 DIG_SUPPLY 复选框时这是 HOT (相关右侧标签报告5V)、当我取消选中该框标签报告3.3V 后、芯片不再是 HOT。

下面是我的实际跳线设置:

JP1:1-2

JP2:1-2

JP3:已安装

JP4:未安装

JP5:已安装(负载249 Ω)

JP6:未安装

JP7:未安装

JP8:已安装

JP9:已安装

JP10:未安装

JP11:1-2

JP12:2-3

JP13:未安装

JP14:已安装

JP15:未安装

JP16:未惊叹

JP17:无法在主板中找到它...

那么、您有一些提示、注意?

此外、尽管我取消选中了相关复选框、但每次 HART 启用时都会读取全部活动...

谢谢、此致。

FF

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

    现在我已经安装了 JP15和 JP16、警报始终为绿色、未选中 DIG_Supply 后 TP7 DVDD 测试点的电压为0.8V、而选中(DAC8771变热)时、使我的电压不超过1.2V、例如某些器件发生短路...。 我要知道这是跳线设置导致的、还是 EVM 本身导致的...

    请告诉我,谢谢。

    FF

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

    更新了-工作板

    经过一些测试后、我检查了系统是否正常工作。

    我已经移除了 JP15和 JP16跳线以分离来自 SM-USB-DIG 的 DIG_VDD 线路、这可以防止内部 LDO 和 SM-USB-DIG 适配器产生的 DVDD 电压输出之间发生任何短路。

    以下是跳线的最终工作配置:

    以及4 -20mA 输出所使用的工作 GUI 设置。

    现在、我正在使用249 Ω 板载负载(JP5用于馈送外部6位1/2校准电流表)、我测得:

    DAC 设置-测量的电流-绝对误差(相对于理论值)-百分比误差

    0x0000:3.9646mA:-35.4uA:

    0x4000:7.9268 mA:-73.2 uA

    0x8000:11.8916 mA:-108.4uA

    0xFFFF:19.821 mA:-179 uA

    在不进行 DAC 校准时是否合理?

    DAC 校准问题

    在 GUI 内的"DAC Calibration"框被选中后、我在 Offset 值上做了一些更改、但在测量电流输出中没有看到任何变化、为了立即使用校准值、还需要执行其他特殊设置?

    谢谢、此致。

    FF

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

    这里是 Iout 与 DAC 代码图、也存在测量的百分比误差、此图在12V 至24V 的所有 VIN 范围内基本相同。

    输出测量电流与理论电流之间的最大百分比误差等于-0.926%

    谢谢、此致。

    FF

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

    FF、


    首先、我很高兴您能使器件正常工作。 如您所述、JP15和 JP16应将内部 LDO 与外部 DVDD 驱动器从 SM-USB-DIG 分离。 它可以设置为由 SM-USB-DIG 驱动的 DVDD、但必须通过 JP15禁用器件的 DVDD。

    对于您的图表、我认为唯一错误的是、我认为第一点的误差应为负值。 您在上一篇文章中展示的数字表明3.9646mA 的0x0000值是负错误、类似于所有其他点的负错误。

    大约0.926%的误差似乎有点高。 不过、您可能尚未考虑基准误差。 对于器件、我们将 DAC 的误差与基准的误差分开。 进行此测量时、还应测量基准电压以消除该误差。

    不管怎样、下次获取该数据时、您都可以将所有测量值包含在 Excel 电子表格中、并且我可以查看这些数据。


    约瑟夫·吴

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

    尊敬的 Joseph:

    感谢您的及时回复!

    Excel 中的测量值。

    误差全部为负值、误差在图右侧的辅助轴上报告。

    谢谢、此致。

    FF

    e2e.ti.com/.../DAC_2D00_measured_2D00_value.xlsx

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

    尊敬的 Joseph:

    我看到另一种奇怪的行为、负载为1k (因此 JP7)时、尽管 VIN 高达30V、正升压电压等于20.835V 且0x0B 寄存器值等于0x1781、但无法达到20mA 输出电流。 警报措施寄存器0x0D 报告的值为0。

    您有什么建议吗?

    如果我将 Busk-Boost 设置更改为下图:

    降压/升压转换器的 Vpos 增加到22.223V (输入电压为24V-30V 相同)、TP3上的输出电压等于19.376V、测量的电流仅为19.325mA、从此测试来看、该模块在1k 欧姆的负载下似乎无法正常工作... 对此、您有什么提示吗?

    谢谢、此致。

    FF

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

    FF、

    我不确定这有什么问题。 我会尝试将 Mode 设置为钳位、然后将正向 CLMP 设置为30V。 然后检查 VPOS_IN 和输出电压。 通常、它应能轻松跟踪到具有1kΩ 负载的24mA、而无需用户调整、因此我不确定正在发生什么情况。

    约瑟夫·吴

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

    FF、

    此外、我查看了您的 Excel 数据、查看了端点非线性、我可以看到一些非线性。 我不确定它的来源、但它似乎在0000 DAC 代码点处最大。 我会查看0代码附近的几个点。 附件是 Excel 文件、我更改了该文件、以便添加到一些 INL 计算列中。

    因为这是电流输出 DAC、所以我预计不会有任何零代码误差。 同样、我还将测量基准值与输出测量值。  

    约瑟夫·吴

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

    我忘记了文件:

    e2e.ti.com/.../DAC_2D00_measured_2D00_value2.xlsx

    约瑟夫·吴

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

    您好、Joseph:

    这里是 Excel 文件、其中包含有关4mA 的更多测量值、如果需要其他测量值或其他测量值、请告诉我。 我还放置了用于执行这些测量的 GUI 设置。

    我这样做的仅适用于 VIN=24V、这将是我的工作电压(因此我删除了 VIN=12V 工作表)。

    非常感谢您的观看!

    FF

    e2e.ti.com/.../1263.DAC_2D00_measured_2D00_value2_2D00_only_2D00_VIN_2D00_24V.xlsx

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

    FF、


    对于具有1kΩ 负载的 DAC 输出(在20mA 输出端)、我能够通过一次更改设置来获得 DAC 的完整输出。 断电条件(在基准输出设置下)必须设置为 IOUT 高阻态、VOUT 高阻态。 这已从 IOUT 高阻态 VOUT 30k Ω 更改为 IOUT 高阻态。

    如果将器件设置为后一设置、则会得到与您类似的结果19.3mA、其中 IOUT=VPOS=22.1V。

    如果将器件设置为之前的设置、则 IOUT=VPOS=22.8V、其中19.97mA 为 VPOS=22.8V。

    再说一次、断电条件应设置为 IOUT 高阻态 VOUT 高阻态。 这应该会为您提供完整的输出范围。

    约瑟夫·吴

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

    尊敬的 Joseph:

    感谢您的观看。

    在1k 负载下的测试中、我还必须将降压/升压启用选项设置为正、如果我使用"全部启用"选项、则最大输出电流限制为19.19mA、因此只有 正极 我有19.9929mA、负载为1k、VPOS=22.867V。

    以下是我的工作 GUI 设置。

    您可以一边看一下吗?

    此处是在这些操作条件下测量值的 Excel 文件。

    e2e.ti.com/.../DAC_2D00_measured_2D00_value2_2D00_only_2D00_VIN_2D00_24V_2D00_RL_2D00_1000.xlsx

    此外、我有一个关于 GUI 界面的问题、对于进入 Buck-Boost 部分的 Enable 下拉菜单 menù 和进入 Buck-Boost 部分的相关情况、进入器件部分的 All Buck-Boost 下拉菜单之间有何差异?

    有一种方法可以直接从 GUI 窗体中获取单个文件中的整个寄存器值、唯一的方法是通过简单 I/O 面板逐个读取寄存器? 当我对配备微控制器的定制板进行编程时、为了获得所有相关的寄存器值、这将非常有用。

    谢谢、此致。

    FF

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

    我注意到的另一个问题是关于报警设置。

    检查此条件(VIN = 24V、RL = 1k、仅启用降压-博斯特、正极部分):

    在这种情况下、测得的输出电流等于3.998XXmA (最后一个 XX 位在43和54之间变化)。

    现在设置最大值、因此0xFFFF、输出电流值会根据19.9930mA 发生相应的变化、但如果我去执行读取警报、我将看到警报 LED 已设置

    然后通过简单的 I/O 面板读取0xB 寄存器(STATUS)、提供值0x1781、从而设置 DAC 故障(F)位。

    现在、问题是系统为什么显示此故障标志已激活?

    通过单击表单上的"方框图"面板返回主表单,然后按下按钮清除 A,将重置报警标志,因此再次按下"读取"报警会发现已将报警 LED 设置为非活动状态。

    这种行为仅在0x0000到0xFFFF 转换时发生、因此我尝试设置压摆控制、如下所示:

    现在、当设置0到0xFFFF 转换时、似乎没有触发警报。

    您是否还可以在您身边进行类似的检查?

    谢谢、此致。

    FF

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

    尊敬的 Joseph:

    我已经通过简单 I/O 面板并使用读取寄存器部分读取了寄存器、但在我看来、并非所有寄存器都已正确读取、例如读取0x04寄存器时、我始终得到0…

    GUI 上的此功能有一些问题?

    谢谢、此致

    FF

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

    FF、


    是的、如果您将器件设置为在 DAC 的默认条件下从最低值转换为满量程、则警报将熄灭。 闹铃的设定取决于数据表第37页描述的几个条件。 其中一个条件是 IOUT 的电压达到某个电平时、在超过500us 的时间内输出精度会受到影响。

    当您设置器件时、会达到此条件、因为 VPOS_IN 设置为低电平、并且它必须在 IOUT 设置为最高值时进行跟踪。 如果您使用的是0 -20mA 范围、当 IOUT 为0mA 时、VPOS_IN 大约为默认值4V。 如果 DAC 设置为20mA、则输出将通过1kΩ 负载跟踪高达20V 的电压。 但是、VPOS_IN 从4V 开始时需要一些时间才能斜升、以便在23V 结束、从而正确设置输出。 由于电源电压设置大约需要1ms、因此警报被设置。

    为了避免此警报、您可以在设置 IOUT 电流之前将 VPOS_IN 设置为适当的电压。 将 MODE 设置为钳位、将正向 CLMP 设置为23V、然后将 IOUT 设置为0000至 FFFF。 在这种情况下、器件没有 IOUT 电压受影响的时间段。


    约瑟夫·吴

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

    FF、

    此外、我在读取器件时通常不会遇到任何问题。 您是否尝试读取其他寄存器? 我要注意的是、0x04寄存器默认为0。  

    您发送的通信是否有任何特定的顺序可为您提供0读数?

    约瑟夫·吴

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

    我已经重新加载了 GUI、现在寄存器值看起来很正常。

    感谢提供有关在0和满量程之间转换时报警的信息! 嗯、在我的应用中、这种情况永远不会发生、那时我只是为了对芯片进行广泛测试而注意到这种行为...

    此致

    FF

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

    尊敬的 Joseph:

    我正在使用 SPI 工作、以便使用微控制器评估板的 MISO、MOSI、SCLK、SYNC、GND 线从 J1连接器驱动 DAC8771EVM。 微控制器以5V 电压供电、当然、在连接微控制器板之前、我已经将 SM-USB-DIG 适配器与 J2断开。

    我想问一下究竟支持什么 SPI 模式? DAC8771将在哪个时钟沿对 MOSI 线路上的传入数据进行采样?

    通过查看 t7和 T8的数据表图1、我可以假设数据在 DAC8771内部时钟下降沿采样、并在上升沿移出、那么模式1、我是对的?

    谢谢、此致。

    FF

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

    FF、

    看起来大多数任务都在工作。 我想提醒的一点是、VOUT 设置为"IOUT High-Z"时的断电条件设置30kΩ 会产生一些误差、除非您将 VOUT 设置为高阻态。  

    对于这款特定的电路板、VOUT 和 IOUT 是并联的、如果您设置了 VOUT 的30kΩ 电阻、则仅使用 IOUT 模式时仍会出现这种情况。

    约瑟夫·吴

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

    FF、

    是的、回答正确。 DAC8771与 SPI 共同工作、从而使 SCLK 在低电平空闲状态下、数据(DIN 或 SDO)在 SCLK 的下降沿有效。

    约瑟夫·吴

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

    感谢 Joseph!

    我已通过 SPI 接口成功写入 DAC8771寄存器、因此我能够从微控制器评估板向 DAC8771发送命令。

    现在我需要处理读取命令、除了数据表中报告的信息之外、您是否有其他一些信息、它不是那么清楚、写入命令后似乎与我必须读取的寄存器相关、我还必须发送另一个命令 (NOP SO 寄存器地址0x00、要发送的值等于0x00)、以便读取 DAC 的应答(图2、第14页和第42页)、 为了指示 DAC8771进行读取操作、帧的23位(MSB)、因此请求到地址的字节的 MSB 应设为1。 我对吗?

    更新

    我已成功管理 SPI 读取并正常工作、现在我可以通过 SPI 写入和读取 DAC8771寄存器; 现在我有一个与警报(寄存器0x0B)相关的问题、如何执行清除警报操作、就像我通过按下清除按钮来清除警报信号以在 GUI 中执行的操作一样?

    我还有另一个关于 SPI 线路行为的问题、当 DAC8771未由外部 PVDD/AVDD 供电、但 SPI 线路实际上连接到微控制器、并且这条线路在 DAC8771之前供电时、SPI 线路上存在一些电流限制。 是否激活了这些线路上的保护二极管 ECC...?

    像往常一样感谢!!

    此致。

    FF

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

    尊敬的 Fabio:

    Joe 现在正在处理这个问题。

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

    FF、


    警报是根据数据表第8.3.8节中所述的几种条件设置的。 这些条件都会在器件上被持续监控。 当警报发生时、该引脚被拉低、并设置0x0B 上的相应状态位。 ALARM 引脚保持低电平、直到通过向相应位写1将状态位清零。 数据表中的8.3.10中对此进行了说明。

    对于 DAC8771 SPI 线路、器件或 EVM 板上没有任何串联保护二极管或电阻。 不过、用于 EVM 的 SM-USB-DIG 控制器确实使用了一些驱动器、这些驱动器似乎针对过压/过流事件具有某种固有保护。 您需要查看 SM-USB-DIG 平台用户指南:

    https://www.ti.com/lit/pdf/sbou098

    约瑟夫·吴

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

    感谢 Joseph 向我指出了正确的段落、在我的数据表阅读过程中、我没有注意到有关警报清除过程的这一点。

    实际上、我的微控制器似乎都能正常工作、并且我能够通过 SPI 接口正确驱动和读取 DAC8771、仅供其他人参考可能会有用。我将在下面详细介绍通过 SPI 读取和写入的信息。

    更新模式
    在我的设计中!LDAC 引脚连接至0V,因此使用的模式为异步模式(DAC8771数据表第42页)。

    在以下伪代码中,SPI_SendByte ()函数仅通过微控制器的 SPI 接口发送一个字节,因此相关实现与使用的微控制器有关。

    DAC8771 SPI 读取操作
    输入:uint8_t regaddr =>寄存器地址
    输出:uint16_t ans =>已读值

    - SYNC 强制低电平
    - firstbyte= 0b10000000 | regaddr;//将 R/W 位设置为1 (数据表第42页,表2)
    - SPI_SendByte (firstbyte);
    - SPI_SendByte (0x00); //有效载荷设置为0
    - SPI_SendByte (0x00); //有效载荷设置为0
    - SYNC 强制高电平
    -延迟(我使用了1.75us ,只需检查是否大于 T6第13页)
    - SYNC 强制低电平
    - SPI_SendByte (0x00);//传输 NOP 命令(寄存器0x00、有效载荷0x00)
    - hibyte=SPI_SendByte (0x00);// HI 字节
    - lobyte=SPI_SendByte (0x00);// LO 字节
    - SYNC 强制高电平
    - ans=(((uint16_t)hibyte)<<8)|((uint16_t) lobyte);//建立最终值

    DAC8771 SPI 写入序列
    输入:uint8_t regaddr =>寄存器地址
    输入:uint16_t val => 16位数据(在 DAC8771上提供的有效载荷)
    输出:空

    - SYNC 强制低电平
    - firstbyte = regaddr;
    - databytehi =(uint8_t )((val >>8)& 0x00FF );
    - databytelo =(uint8_t )(val & 0x00FF );
    - SPI_SendByte (firstbyte);
    - SPI_SendByte(dabytehi );
    - SPI_SendByte(dabytelo );
    - SYNC 强制高电平

    希望这些信息对其他应用有所帮助。

    此致。

    FF

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

    FF、

    我希望此器件适合您的应用! 如果您有任何其他问题、请随时发帖。

    约瑟夫·吴

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

    感谢 Joseph、
    我将进一步进行开发、您会为我提供很大帮助。

    此致!

    FF