Other Parts Discussed in Thread: ADS54J40
工具/软件:TI C/C++编译器
我正在使用高速数据转换器5.00.02
是否有更新版本? 此版本在保存数据文件时非常慢。
谢谢、
雅龙
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.
雅龙
您可以通过以下链接下载预发布。
此致、
Jim
Jim、
我们正在保存 bin 文件。 其尺寸为2GB。 检索数据所需的时间超过30秒。 保存文件的时间更长。
我的 PC 安装在配备16GB 和 SSD 驱动器的新 i7中。 我尝试将数据保存到 RAM 磁盘、结果类似。
在新版本中、有一项新功能允许您使用两个新的自动化 API "Get_Capture_Data_16bits 和"Get_Capture_Data_32bits "直接检索数据。 他们对我不起作用、但由于您发送给我的版本是旧版本、我认为现在可以解决这个问题。
谢谢、
雅龙
新的 API 函 数"get_Capture_Data_16bits"和"get_Capture_Data_32bits"开始为我工作。
但我无法检索大量数据、我已定义了"NumberOfSamplesPerChannel"、"CaptureData"、"ArrayLen"参数、其大小更大。 我将得到一个大数组、其中大部分为零数
Python 代码:
number_of _samples_per_Channel = 256000000;
OffsetSamplePerChannel = 0;
CAPTURE_Data_Array_Len = 512000000;# number_of _samples_per_channel * number_of 通道
CaptureData_16位=(c_ulong* Capture_Data_Array_Len)()#Initializing the array for the total number of samplesErr_Status = HSDC_Pro.Get_Capture_Data_16bits (number_of _samples_per_Channel、OffsetSamplePerChannel、OffsetSamTimeData_16位、Capture_Data_Data_16位、Capture_Data_Route_Array _16bits、CaptureTime_LMM)
我的另一个问题是如何将检索的数据转换为实际值? 我将得到较长的值
示例:已附加
谢谢、
雅龙
雅龙
如果传输尺寸较大且该过程尚未优化、则从 TSW-Board 到 HSDC Pro 应用程序的数据传输将需要很长时间。 作为一种变通办法,通过直接访问在“捕获”过程中创建的信道明智的文件,可以减少从 HSDC Pro 应用程序中将捕获的数据导出为 bin 文件所花费的时间。 每个通道的样本在捕获完成后分别存储为 TSW14J56RevD 通道1的“ADC Temp0.bin”、通道2的“ADC Temp1.bin”等。
信道文件位置: C:\Users\Public\Documents\Texas Instruments\High Speed Data Converter Pro\HSDCPro Data
在处理逐通道 bin 文件时要注意的点:
1: 对于小于或等于16位的 ADC 分辨率、读取2个字节的数据以形成采样;对于大于16位且小于或等于32位的 ADC 分辨率、读取4个字节的数据以形成采样。
2.样本的数据表示为 偏移二进制
3.样本的数据格式为大端字节序
我们目前正在研究 报告的"GET_Capture_Data_16bits"和"GET_Capture_Data_32bits"自动化 API 问题。
此致、
Jim
您好、Jim、
感谢您提供这些信息、使用系统创建的文件非常有用、可以节省时间。 希望这两个 API 函数将更快。
同时、我也无意中发现了您的开发团队应该考虑的另一个错误。
调用选择 ADC 器件的 API 会导致系统在固件下载中堆栈、python 代码:
打印"Selecting ADC Device:"+ devicename
ERR_Status = HSDC_Pro.Select_ADC_Device (devicename、120000)
打印"错误状态="+ str (Err_Status)
谢谢、
雅龙
雅龙
1. “get_Capture_Data_16bits”函数不会触发捕获,它仅用于提取 HSDC Pro 软件已捕获的数据。 我们相信,在使用“get_Capture_Data_16bits”函数时,65536个元素后的“CaptureData_16bits”数组中的后零是因为在使用此函数之前,只在 HSDC Pro 软件中使用65536个样本进行了捕获。 因此,请增加每个通道要捕获的样本数,然后进行捕获,然后使用“get_Capture_Data_16bits”函数提取捕获的数据。 可以使用“set_number_of _samples”自动化功能来设置每个通道要捕获的样本数。
2. 关于使用“Select_ADC_Device”自动化功能时所面临的问题,请尝试从菜单选项 Instrument Options>> Download Firmware (工具选项>>下载固件)手动下载任何固件,并查看是否导致同一问题, 如果不愿意共享“Select_ADC_Device”自动化函数中使用的“devicename”变量的字符串值,并与“devicename”变量的字符串值的名称相同,共享 INI 文件,如果您使用的是“TSW14J56RevD”板,该文件将出现在以下位置:
A.INI 文件夹路径: C:\Program Files (x86)\Texas Instruments\High Speed Data Converter Pro\14J56revD Details\ADC 文件
3. 之前的回复中有一个拼写错误,涉及从 C:\Users\Public\Documents\Texas Instruments\High Speed Data Converter Pro\HSDCPro Data 的 Channel Wise bin 文件解析数据样本,样本的数据格式为小端字节序,但错误地被称为大端字节序,对此表示歉意
此致、
Jim
你好、Jim
1.我已经使用 较大的样本大小测试了“get_Capture_Data_16bits”,尽管我的系统有足够的 LabVIEW 内存(我正在尝试获取512M 个元素),但我收到了内存不足的消息。
我将附上消息。
2.关于此问题,我尝试手动下载固件。 系统在下载固件时卡住、从这一点开始、无法手动选择 ADC、每次尝试都是在系统堆栈时结束的。 仅重新启动计算机使我能够再次手动选择 ADC。
我手动和自动选择的 ADC 为:"ADS54J40_LMF_8224"
3.关于印第安人,我是自己想到的。
谢谢、
雅龙
雅龙
要调试该问题、请尝试以下操作:
HSDC Pro 软件在 LabVIEW 2014 32位运行时间引擎上运行、该引擎只能访问有限数量的虚拟内存。 当执行具有更大样本大小的“get_Capture_Data_16bits”自动化函数时,LabVIEW 2014 32位运行时引擎的内存会过载,这会导致 LabVIEW 内存满错误。 相反,请尝试在 完成“捕获”过程后访问在文件夹 C:\Users\Public\Documents\Texas Instruments\High Speed Data Converter Pro\HSDCPro Data 中生成的按通道二进制文件,以避免此内存已满错误。
此致、
Jim