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.

[参考译文] ADS58J89:如何将数据实时导出到 Matlab

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

https://e2e.ti.com/support/rf-microwave-group/rf-microwave/f/rf-microwave-forum/763194/ads58j89-how-to-export-data-real-time-to-matlab

器件型号:ADS58J89

尊敬的先生/女士:

我使用 ADS58J89作为 ADC、 使用 TSW14J56作为采集卡。

我想知道如何将所有4个通道的实时数据从 HSDCpro 导出到 Matlab 进行处理。 我是否需要安装任何接口?

谢谢

Farshid

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

    您可以从“文件”>“将整数 I32代码另存为 CSV 文件”导出数据
    还有一个 Matlab 脚本示例、可用于实现数据采集过程的自动化。
    该脚本位于:C:\Program Files (x86)\Texas Instruments\High Speed Data Converter Pro\HSDCPro Automation DLL\Manual and Examples\Automation DLL Matlab Example

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

    您好 Eben、

    感谢你的帮助。

    嗯、我打开了 Matlab 代码、在输入正确的 ADC 和 Capture 卡序列号并为 Matlab 提供正确的固件路径和名称后、我运行了 Matlab。  

    首先、HSDC 专业版停止在其屏幕上显示数据。 下图:

    我导入了一切的正确路径。 下面是我在 Matlab 的 Worksapce 的屏幕截图。

    我接着检查了应保存数据的目录、但 CSV 文件为空。 您是否知道它为什么不保存数据?  

    此外、这里是我的命令窗口:

    "

    请在使用这些自动化 DLL 函数之前打开 HSDCPro GUI。
    按 ENTER 键开始...


    连接到主板:T825T9Tu-TSW14J56revD
    错误状态= 0 (无错误)

    选择 ADC Device:ADS58Jx_LMF_442
    错误状态= 0 (无错误)

    配置设置:

    通过 ADC 输出数据速率= 250000000
    错误状态= 0 (无错误)

    ADC 输入目标频率= 169990000
    错误状态= 0 (无错误)

    每通道的采样数= 65536
    错误状态= 0 (无错误)警告:转义字符'\a'无效。 请参阅"doc sprintf"以了解
    支持的特殊字符。
    >在 HSDCPro_Automation_DLL_ADC_Example_64位中(第102行)


    错误状态= 0 (无错误)

    应用 FFT 陷波滤波器设置
    错误状态= 0 (无错误)

    应用触发器设置
    错误状态= 0 (无错误)

    启动正常捕获。 按 Enter 键继续...

    正在启动正常捕获...
    错误状态= 7014 (读取 DDR 到文件超时错误。)

    正在检查 HSDCPro GUI 是否已完成所有操作...
    错误状态= 0 (无错误)

    将 ADC 原始数据另存为 CSV 文件、位于 C:/HSDCPro Data/ADCdata.csv
    错误状态= 0 (无错误)

    测试选择选项= 1 (时域0;单音1;双音2;通道电源3)
    错误状态= 0 (无错误)

    图形图类型= 2 (代码- 0;位- 1;实数 FFT - 2;复数 FFT - 3)
    错误状态= 0 (无错误)

    FFT 窗口类型= 3 (矩形- 0;汉明- 1;汉宁- 2;黑曼- 3)
    错误状态= 0 (无错误)

    在 C:/HSDCPro Data/ADCFFT.png 将 ADC FFT 另存为 PNG 图像
    错误状态= 0 (无错误)

    选择 ADC 通道索引= 0
    错误状态= 0 (无错误)

    获取活动通道的 FFT 数据。
    错误状态= 0 (无错误)

    获取单音参数值。
    错误状态= 0 (无错误)
    参数值为:
    SNR = 0dBFS
    SFDR = 0dBc
    THD = 0dBFS
    SINAD = 0dBFS
    ENOB = 0位
    基金。 = 0dBFS
    下一杂散= 0dBFS
    HD2 = 0dBc
    HD3 = 0dBc
    HD4 = 0dBc
    HD5 = 0dBc
    NSD = 0dBFS/Bin

    断开与电路板的连接
    错误状态= 0 (无错误)

    "

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

    从屏幕截图中可以看到固件未加载到 TSW14J56 EVM。 因此、请尝试手动将 HSDCPRO 连接到 TSW14J56并加载固件。 加载固件后、启动 MATLAB 自动化脚本。

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

    首先、我手动将固件加载到 HSDCPRO。 采样正常。
    然后、我打开 Matlab 并运行代码。 我在 HSDCPRO 上看到一个空屏幕(我将照片放在我的最后评论中)。 我不确定这仅是由于固件所致。 在您的 Matlab 代码中、还有一行也会调用固件。 我提供了与手动提供给 HSDCPRO 的目录地址相同的目录地址。 但它不起作用。 有什么解决方法的想法吗?

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

    64位 Matlab DLL 还要求您下载并安装64位 LabVIEW 2014运行时引擎。 Automation DLL Matlab example> 64位 Matlab 文件夹中有一个 readme.txt 文件,其中包含下载此运行时引擎的链接。

    如果您使用32位 Matlab DLL、则无需安装任何额外的运行时引擎。

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

    您好 Eben、

    实际上、我读取了 readme.txt 文件并按照说明进行操作。 我使用64位 Matlab DLL、因此我安装了64位 LabVIEW 运行时引擎。

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

    您好 Farshid、

    是否可以尝试附加 ini 文件。 将 ini 文件放在下面的目录中,然后重新启动 HSDCPRO

    C:\Program Files (x86)\Texas Instruments\High Speed Data Converter Pro\14J56revD Details\ADC 文件

    谢谢、

    埃本

    e2e.ti.com/.../ADS58Jx_5F00_LMF_5F00_442_5F00_ALT_5F00_SYNC.ini

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    嗯、我打开了 Matlab 代码、在输入正确的 ADC 和 Capture 卡序列号并为 Matlab 提供正确的固件路径和名称后、我运行了 Matlab。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 Eben、

    我使用了您发送的 ini 文件并运行了 Matlab 代码、但数据再次从 HSDCPro 窗口中消失、并且不再进行采样。 但是、它在运行 Matlab 代码之前进行了采样。 你怎么看? 这是一个屏幕截图。

    谢谢

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

    我想知道您是否对如何解决该问题有任何疑问?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好 Farshid、

    当您使用我发送的新 ini 文件时,是否可以发布 MATLAB 命令窗口的输出?

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

    您好 Eben、

    最后、我了解了如何实现它。 以下是步骤:

    1-在 HSDC Pro 中手动加载固件

    2-运行代码,然后在 Matlab 命令窗口中按 Enter 键

    3-在 HSDC 专业版中再次手动加载固件

    4-在 HSDC Pro 中按 CAPTURE

    5-在 Matlab 中看到"Start normal capture (开始正常捕获)"后、再次按 Enter 键

    因此、它捕获数据并将其保存在 CSV 文件中。

    现在、我有三个问题。 首先、当我运行代码时、它似乎只捕获一次数据、并且不会随着时间的推移更新 CVS 文件。 这是什么? 如果我想连续采样数据该怎么办?

    其次、CSV 文件中保存了哪种类型的数据? 它看起来不像在 HSDC Pro 窗口中绘制的那样以 dBFS 为单位。

    第三、我用2.6秒的时间在 CSV 文件中进行采样和写入、这很慢。 我报告的时间是否合理? 还是有问题? 此外、我如何更快地实现它? 这里是我的参数。

    ADCOutputDataRate = 250e6;
    ADCInputTargetFrequency = 169.994354248e6;
    NumberOfSamplesPerChannel = 65536;

    NumberOfSamplesForAnalysis = 65536/2;

    感谢你的帮助。

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

    再次查看 Matlab 工作区、您的固件文件路径不正确。 将反斜杠更改为14j56 RevD Details\firmware\之后的正斜杠

    或者、您可以注释掉第86行、并在运行 MATLAB 代码之前手动下载固件。
    %[Error_Status]= calllib ('HSDCProAutomation_64Bit'、'Download_Firmware'、FirmwareFilePath、WaitToCheck、60000);

    如果您确认此修复程序对您有效、我将关闭此主题。 如果您有更多问题、请开始新的问题。

    谢谢、
    埃本