Decode I-Q values from IQ file in MATLAB

68 vues (au cours des 30 derniers jours)
tyler seudath
tyler seudath le 16 Sep 2022
Commenté : Jeffrey Clark le 18 Sep 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 commentaire
Jeffrey Clark
Jeffrey Clark le 18 Sep 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)

Connectez-vous pour commenter.

Réponses (0)

Catégories

En savoir plus sur Get Started with Statistics and Machine Learning Toolbox dans Help Center et File Exchange

Produits


Version

R2021a

Community Treasure Hunt

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

Start Hunting!

Translated by