Other Parts Discussed in Thread: TMS320F28030
Tool/software: Code Composer Studio
Hello,
I have been working with TMS320F28030.
I have two data that i need to multiply them in IQ format but i couldnot find an IQ value which gives me correct values.
what i did so far is;
//defines
#define GLOBAL_Q 16 // changed 16 to few other values to test
long GlobalQ = GLOBAL_Q;
#define res16 0.0000762939453125 // = 5/2^16
#define data 0x9B76 //16 bit data
_iq res16_iq;
_iq data_iq;
in main loop;
res16_iq = _IQ(res16);
data_iq = _IQ(data);
when i change GLOBAL_Q 16 to
GLOBAL_Q 15 or less i get correct value for data_iq but wrong value for res16_iq,
GLOBAL_Q 16 or more i get correct value for res16_iq but wrong value for data_iq.
1) is there any way to multiply data_iq and res16_iq in an _IQ value? such like _IQmpy(data_iq, res16_iq)
2) and for the project when i debug it with flash i can see correct values of _IQ but when i try without flash _IQ values appears to be different then expected.