Decode I-Q values from IQ file in MATLAB

54 visualizaciones (últimos 30 días)
tyler seudath
tyler seudath el 16 de Sept. de 2022
Comentada: Jeffrey Clark el 18 de Sept. de 2022
Dear all,
I recorded I/Q on my SDR and the I/Q binary file found here. I was wondering if the IQ file can be opened in matlab so I can see the real and imaginary values.
Many thanks in advance.
Best,
Tyler
  1 comentario
Jeffrey Clark
Jeffrey Clark el 18 de Sept. de 2022
@tyler seudath, I tried double (8 byte) and single (4 byte) floating using little and big endian (4 combinations) but always got INF or NaN for some of the floats.
  1. Is the SRD recording in an IEEE standard float or other?
  2. Or just producing N byte signed/unsinged integers?
  3. little or big endian?
You can use these commands to get the 10,010,624 bytes of binary read into a float or integer array, byte swapped as needed modifying the following. If you find you have 16 bit float you will have to try to find a converter; if you expect integer data you can also adjust accordingly. Since I expected to find complex numbers I expected 2xN as indicated:
[FID, message] = fopen('Binary.iq','rb','s'); % the 's' specifies big endian for float formats
[bindata,count] = fread(FID, [2,inf],'*double','s'); % hear trying 8 byte and big endian
iqdata = complex(bindata(1,:),bindata(2,:));
fclose(FID)

Iniciar sesión para comentar.

Respuestas (0)

Categorías

Más información sobre Data Import and Analysis en Help Center y File Exchange.

Productos


Versión

R2021a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by