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.

[参考译文] ADS4246EVM:ADS4246EVM 的示例代码

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

https://e2e.ti.com/support/data-converters-group/data-converters/f/data-converters-forum/926340/ads4246evm-example-code-for-ads4246evm

器件型号:ADS4246EVM

尊敬的 TI:

我想申请  ADS4246EVM 的 FPGA 代码示例和 SPI 配置的 C 代码。

此致、

Thiha Kyaw

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

    Thiha、

    FPGA 代码可在 TI 网站上的 TSW1400EVM 产品文件夹下找到。

    我们没有任何用于 SPI 配置的 C 代码。

    此致、

    Jim

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

    尊敬的 Jim:

    TSW1400EVM 使用 Altera FPGA。 我正在使用 Xilinx。 因此我无法使用它。

    我想问一些有关 SPI 配置的问题。

    我可以在使用  测试模式时获取正确的数据。 我通过 SPI 发送数据、如下所示:

    输入 CLK = 50MHz

    地址>值

    0x25 > 0x02 (全部)

    0x2B > 0x03 (切换)

    0x42 > 0x08 (启用数字)

    我有以下输出

    我假设我的 ADS4246 IP 内核工作正常。

    然后、我想使用读取片上模拟信号进行测试。

    我应该通过 SPI 进行哪种配置?

    现在我获得了数据、但所有信号都是方形的、而实际信号是正弦波。

    我设置数据格式(0x29 > 0x03 偏移二进制)。

    我想知道 ADS4246芯片的 SPI 配置的正确过程。

    请告诉我。

    谢谢。

    此致、

    Thiha Kyaw  

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

    Thiha、

    请在加电和时钟后执行软复位。 将寄存器0x00中的位1设置为"1"。 这是一个自清零位。

    接下来、我建议将格式更改为偏移二进制、地址0x29数据0x18。 在上面、您提到了该寄存器的数据值0x03、这是错误的。

    如果您真的写入0x18、请通过将此地址设置为0x00来尝试二进制补码。

    此致、

    Jim  

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

    尊敬的 Jim:

    我根据您的建议再次测试。

    数据表显示、我们应该得到10101010101010和010101010101。

    但我没有明白。  

    请告诉我如何获取。

    谢谢。

    此致、

    Thiha Kyaw

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

    Thiha、

    地址0x25和0x2B 都需要设置为0x03才能交替显示10种模式。 写入这些寄存器后、执行读操作以验证它们具有正确的值。 寄存器0x42必须设置为0x08。

    此致、

    Jim

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

    尊敬的 Jim:

    我认为错误发生在我开发的 IP 内核中。 偶数位14处的读数不正确。 您能建议我如何解决这个问题吗?  

    谢谢。

    此致、

    Thiha Kyaw

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

    Thiha、

    您是否在 CMOS 输出模式下使用该器件? 数据是否在固件中正确映射? 我会检查您在 FPGA 侧的引脚分配。

    另一件要尝试的事情是交换 FPGA 内部的分配、看看问题是否转移到 B 侧。 如果移动、则问题可能是来自 ADC 的数据。 如果是这种情况、请检查接头的针脚是否弯曲或折断。

    此致、

    Jim   

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

    尊敬的 Jim:

    我使用 DDR LVDS 输出。

    在交换 FPGA 内的引脚分配后、ERROR 位会相应地移至交换引脚。 这意味着从 ADS4246到 FPGA 引脚的输出出现问题。

    仅当数据在正时钟边沿转换时、才会发生错误。 在负时钟边沿从 FPGA 读取数据是正确的。

    如果您有任何建议、请告知。 我也会尽力解决这个问题。

    谢谢。

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

    Thiha、

    使用上升沿从 ADC 计时的数据应在 FPGA 内部进行加倍记录。 第一个寄存器将使用上升沿(如果不需要保持时间)、而下一个寄存器将使用同一时钟的下降沿来寄存数据。 然后、该数据将与  ADC 输出时钟下降沿开始生效的数据保持一致、该输出时钟将仅使用一个寄存器和一个下降时钟来记录数据、从而进入 FPGA。

    此致、

    Jim