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.

[参考译文] DAC7760:SPI 读取问题

Guru**** 2513185 points
Other Parts Discussed in Thread: DAC7760

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

https://e2e.ti.com/support/data-converters-group/data-converters/f/data-converters-forum/962665/dac7760-spi-read-issue

器件型号:DAC7760

尊敬的 TI:

我们使用两个 DAC7760来捕获电压范围
1.±5V (已连接 dac7760_circuit)


2V 至10V

从 DAC7760读取 DAC 寄存器、两个 DAC7760都无法正常工作、SPI 读取/写入时序与数据表匹配(请参阅随附的)。

以下是初始化序列中的24位 SPI 写入
1.56 0001 (init1.jpeg)

2.01 0001 (init2.png)

3.55 1002 (init3.png)


读取 DAC 寄存器序列
通道1±5V (dac1_read) MISO 上无数据


通道2 0V 至10V (dac2_read) MISO 数据与时钟不一致


通道详细信息:

C1:芯片选择
C2:MOSI
C3:MISO
C4:时钟

您能帮我们解决这个问题吗?

此致、

曼诺伊

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

    Manoj、


    我不确定发生了什么、但我认为您应该首先解决 SPI 中的一些问题。 我将此部分从您的示波器快照图像中剪掉:

    我看到的第一件事是 DIN 上升速度非常缓慢。 我会担心 DIN 上升得太慢、以至于在 SCLK 上升沿上升时它不会检测到高电平。

    我看到的第二件事是、DIN 和 SCLK 信号都存在一些明显的噪声耦合。 如果器件将噪声感知为 SCLK 脉冲、则会完全中断 SPI 通信。 此噪声可能是系统中的 EMI 或一些与系统中其他时钟边沿相关的接地反弹。

    无论如何、如果无法从器件获取响应、请查看您是否可以清除这些通信问题、然后发布一些新的示波器截图。


    吴约瑟

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

    您好、Joseph、  

    下面是捕获的初始化写入序列和 SPI 读取。 但是、我们没有从器件获得响应。  

    通道详细信息:

    C1:芯片选择
    C2:MISO
    C3:时钟
    C4:MOSI

    复位:56 0001

    使能和范围:55 1001

    写入 DAC:01 0000

    读取 DAC:02 0001

    此致、

    曼诺伊

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

    Manoj、

    对寄存器进行写操作并读回它将是我的第一次测试。 我会检查时序、但我实际上看不到波形有任何问题。  但是、DIN 上通常会出现一些较大的尖峰、但这通常不会导致问题。

    只需检查您是否使用了任何类型的 SPI 隔离? 无论如何、您的示波器屏幕截图应显示器件引脚上的通信、并且您希望确保信号到达器件。

    以防万一、您能否共享原理图?

    吴约瑟

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

    您好、Wu Joseph、  

    感谢您的回复、  

    我们已通过电平转换器在单个 SPI 总线上连接了两个 DAC (单独的 CS)、先前捕获的波形位于3V3侧。

    此致、

    曼诺伊

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

    Manoj、


    您可以尝试从控制寄存器读回吗? 由于您已经写入了551001、因此应将控制寄存器值设置为1001。 在上一个测试中、您尝试从 DAC 数据寄存器读回。 如果您尚未写入该值、则仍会返回0000作为响应。 遗憾的是、即使器件已死、您也会得到0000、因为该值是默认值。  测试方法是尝试写入器件并读回相同的数据。  

    看一下原理图、我没有发现任何异常。

    吴约瑟

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

    您好、Wu Joseph、  

    我们已经尝试回读控制寄存器、我们将获取 FFFF 作为响应、将捕获波形并很快发送给您。  

    此致、

    曼诺伊

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

    您好、Joseph、  

    附加的控制寄存器的写入/读取波形、以供您参考。  

    写入控制寄存器:55 1001

    读取控制寄存器:02 0002、C1 (MISO)上无数据