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.

[参考译文] ADS8924B:有关 ADS8924B 的问题

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

https://e2e.ti.com/support/data-converters-group/data-converters/f/data-converters-forum/1077632/ads8924b-question-about-ads8924b

部件号:ADS8924B

您好:

目前,我们正在使用 FPGA 访问 ADC 芯片的内部寄存器,并对其进行读写。 我们需要咨询您以下问题:

1、在读取操作期间,主机(FPGA)将首先发送读取指令并等待发送,然后发送 NOP 指令。 发送 NOP 指令时,主机从 ADC 芯片接收数据。 上述读取过程是否正确?

2、结合相关的定时要求,我设计的 SPI 接口的定时如下,设计是否正确?

3、要访问 ADC 芯片中的数据,请以 cntl 寄存器为例,地址=010h,将其值写为0x0F,然后发送一条写入指令:0x24100f。 下图显示了实际 SPI 接口计时:

读取 cntl 寄存器中值的数据_,首先发送读取指令:0x221000,然后在发送读取指令后发送 NOP 指令:0x000000。 下图显示了实际 SPI 接口计时:

如果操作正确,读值应该是0x22100f 吗? 上述接口的计时设计是否正确?

4、如果我想在 ADC 芯片转换后读取数据结果,我将首先向上拉凸信号35 ns,然后向下拉。 在提取 RV 信号后,我开始发送 NOP 指令,同时读取转换的数据。 您能否根据上述流程读取正确的转换数据?

我希望你能花时间来看看,谢谢!

Ref1:ADC 芯片型号 ads8924b。

参考:SPI 定时协议我使用默认配置 SPI-00格式,X1模式的电源,时钟频率为40MHz。 我在时钟的下缘发送数据,在下缘收集数据。

参考文献3:ADC 芯片指令格式的定义见下表:

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

    你好 Jimmy,

    1.是的,这是正确的顺序。  下面是一个示例正时图。

    2.是的,只要满足所有时间要求,这似乎是正确的。  请注意,对于 SPI-00-S,ADS8924B 将捕获 SCLK 上升边缘的数据。  在此示例中,您将发送一个 WR_REG 命令以寻址0x10h (DATA_CNTL 寄存器),其内容为0x0Fh。  请注意,此寄存器设置奇偶校验信息。  但是,LSB (位0)在设置为1时选择固定模式寄存器的内容。  固定模式仅用于调试,因为 ADC 只输出模式寄存器的内容,而不输出 ADC 转换结果。  为了读取 ADC 转换结果,需要将该位清除为0。

    3.如果要将值0x0Fh 写入寄存器0x010h,以下22b 传输将如下所示: 0x10 0100 0001 0000 11b  

    是的,要读取该寄存器中的值,您将发送0x10 0010 0001 0000 0000 00000000 b。  在下一个帧中,前8b 将是寄存器值,后接140。  在这种情况下,您应该阅读0x00 0011 1100 0000 00000000 00000000 b,这与您所附的波形捕获一致。  在 RD_REG 命令后的下一帧中读取的结果只是寄存器的8b 内容,后跟零。

    4.是的,这是正确的过程。  如我在上面所述,data_CNTL 寄存器(010h)中的 DATA_VAL 位应设置为0b 以获得转换结果。  在上述示例中,您已将此位设置为1,该位将用 PATN CNTL 寄存器内容替换转换结果,而启动重置时默认为0x000000h。

    此致,
    基思·尼古拉斯
    精密 ADC 应用