TI中文支持网
TI专业的中文技术问题搜集分享网站

DCA1000EVM: DCA1000EVM CLI Control 工具

Part Number:DCA1000EVM

为什么我用DCA1000EVM Control CLI 工具得到的原始数据,无法用官方提供的read_bin.m文件处理呢?一直会报错?请问我该如何处理?

gaojun gao:

我的cf.json配置如下: 我的.cfg文件配置如下: 。如果我把cf.json中的captureStopMode的duration状态改为infinite,并且录制的时间达到14s,则可以使用官方提供的read_bin.m文件进行处理,在录制时间为8s时则无法使用read_bin.m进行处理。请问是上面原因?

,

Gary Lu:

您可以 检查一下`read_bin.m`文件的源代码,查看其对于录制数据长度的限制。

,

gaojun gao:

 请问是这部分代码吗?

,

gaojun gao:

DCA1000EVM Control CLI 工具得到的原始数据通过read_bin.mat读出来的adcData大小为16885960×1,而不是像mmwave studio读取的原始数据经过read_bin.mat读出来的adcData大小为4×16885960

,

Gary Lu:

您好,他确实是一个部分示例代码

,

Gary Lu:

DCA1000EVM Control CLI 工具得到的原始数据是经过压缩的二进制数据,需要通过解压缩和解密后才能得到原始的 ADC 数据。在解压缩和解密后,得到的数据大小应该与 mmWave Studio 中读取的原始数据大小相同,即为 4×16885960。

如果您使用的是 MATLAB,可以使用 mmWave Toolbox 中的 readDCA1000 函数来读取解压缩和解密后的 ADC 数据。该函数会返回一个大小为 4xN 的矩阵,其中 N 是采样点数。您可以将该矩阵保存到 .mat 文件中,然后使用 MATLAB 的 load 函数来加载数据。

以下是一个示例代码,用于读取 DCA1000EVM Control CLI 工具得到的原始数据:

% 读取二进制文件
fid = fopen('data.bin', 'r');
data = fread(fid, inf, 'uint8');
fclose(fid);
% 解密和解压缩数据
adcData = readDCA1000(data);% 保存数据到 .mat 文件
save('adcData.mat', 'adcData');

然后,您可以使用以下代码来读取保存的 .mat 文件:

% 读取 .mat 文件
load('adcData.mat');% 处理 ADC 数据
% ...

请注意,解密和解压缩数据可能需要一些时间

赞(0)
未经允许不得转载:TI中文支持网 » DCA1000EVM: DCA1000EVM CLI Control 工具
分享到: 更多 (0)