工具/软件:Code Composer Studio
客户在使用DSPLIB_1_20_03_01的MSP_Bumped_Q15命令时遇到问题。
他们使用了几个LEA函数(FFT,IFFT,MAX等),但在乘法推荐(MSP_BULD_Q15)方面遇到了问题。 它们没有收到正确的结果(矢量填充0,有时是+-1)。
请您评论错误所在位置吗?
代码(添加命令正在工作)
#include "DSPLIB/include/DSPLIB.h"
#define vector_length 8.
//将数据加载到共享RAM中以使用LEA
DSPLIB_DATA (src1,4)
DSPLIB_DATA (src2,4)
DSPLIB_DATA (DST,4)
_Q15 src1[vector_length]={1,2,3,4,5,6,7,8};
_Q15 src2[vector_length]={1,5,3,4,5,6,7,8};
_Q15 DST[vector_length];
int main (void){
MSP_STATUS状态;//命令状态
//------------------
mspump_q15_params mpyParams;//数据结构
MpyParams.length =8;//矢量长度
//运行LEA颠簸计算
状态= MSP_Pumped_Q15(&MpyParams,src1,src2,dst);
//------------------
//------------------
msp_add_q15_params addParams;//数据结构
addParams.length =8;//引导程序的长度
//运行LEA添加计算
状态= MSP_ADD_Q15 (&addParams,src1,src2,dst);
//------------------
}