PWM2中断中的IQ代码如下:
1.
iqtmp =_IQ(spwmiqvar.spwm_cnt)+_IQ(SIN_B);
spwmiqvar.sinvale =_IQsin(spwmiqvar.sina);
spwmiqvar.sinb =_IQmpy(spwmiqvar.M_FACTOR,spwmiqvar.sinvale);
spwm_value=1000+1000*_IQtoF(spwmiqvar.sinb);
请问上述代码执行几个周期?
TMS320F28027的晶振配置为60MHZ,一个指令周期理解为16.6ns这样对不?
2.在文件IQmathLib.h中GLOBAL_Q 值有30种 请问这30种的值都是在TMS320F28027的IQmath表中存储着还是只是几种存储 ?
3.请问在什么情况下使用IQ才能执行速度快?
比如 三个变量 uint16_t a,b; float c
第一种情况
a=b*c;
第二种情况:
a=b*_IQtoF(_IQ(c) );
第三种
a=b* _IQ(c) >>GLOBAL_Q ;
三种情况执行速度分别是多少?(顺便提下 我要验证过的速度 以前的IQ问题回复我感觉是没经过验证的回复 实际上与你们的回复不符,顺便说下关于AIO的提问 你们回复肯定是没做验证 我做了验证 AIO在做输入的时候 不接外部上拉的时候 AIO检测到的电平是不确定 能否以后的回答做完验证后再做回复)
第一个问题的代码我会上传