欢迎来到天天文库
浏览记录
ID:34545236
大小:520.08 KB
页数:12页
时间:2019-03-07
《第17章arm官方dsp库的complexmathfunctions的使用教程(一)》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、安富莱UM403DSP教程STM32-V5开发板系统篇手册第17章ComplexMathFunctions的使用(一)本期教程主要讲解复数运算中的共轭,点乘和模的求解(什么是复数,大家应该还有印象吧,这个很重要,在后面FFT等算法的处理时都要用到,印象不深的同学需要简单的补充下高数知识)。17.1复数共轭运算ComplexConj17.2复数点乘ComplexDotProduct17.3复数求模ComplexMag17.4总结17.1复数共轭运算ComplexConj17.1.1arm_cmplx_conj_f32公式描述:for(n=0;
2、n3、:1.数组pSrc中存储的数据格式是(实部,虚部,实部,虚部……………),一定要按照这个顺序存储数据,比如数据1-j,j,2+3j这个三个数在数组中的存储格式就是:pSrc[6]={1,-1,0,1,2,3}。(注意第三个数据是0)。函数的输出结果pDst也是按照这个顺序存储的。17.1.2arm_cmplx_conj_q31公式描述:2015年01月15日版本:1.0第1页共12页安富莱UM403DSP教程STM32-V5开发板系统篇手册for(n=0;n4、+0];//实部pDst[(2*n)+1)]=-pSrc[(2*n)+1];//虚部}函数定义如下:voidarm_cmplx_conj_q31(q31_t*pSrc,q31_t*pDst,uint32_tnumSamples)参数定义:*pSrcpointstotheinputvector*pDstpointstotheoutputvectornumSamplesnumberofcomplexsamplesineachvector注意事项:1.数组pSrc中存储的数据格式是(实部,虚部,实部,虚部……………),一定要按照这个顺序存储数据,5、比如数据1-j,j,2+3j这个三个数在数组中的存储格式就是:pSrc[6]={1,-1,0,1,2,3}。(注意第三个数据是0)。函数的输出结果pDst也是按照这个顺序存储的。2.这个函数使用了饱和运算。3.数值0x80000000由于饱和运算将变成0x7FFFFFFF。17.1.3arm_cmplx_conj_q15公式描述:for(n=0;n6、m_cmplx_conj_q15(q15_t*pSrc,q15_t*pDst,uint32_tnumSamples)参数定义:*pSrcpointstotheinputvector*pDstpointstotheoutputvectornumSamplesnumberofcomplexsamplesineachvector注意事项:1.数组pSrc中存储的数据格式是(实部,虚部,实部,虚部……………),一定要按照这个顺序存储数据,比如数据1-j,j,2+3j这个三个数在数组中的存储格式就是:pSrc[6]={1,-1,0,1,2,3}。(注7、意第三个数据是0)。函数的输出结果pDst也是按照这个顺序存储的。2015年01月15日版本:1.0第2页共12页安富莱UM403DSP教程STM32-V5开发板系统篇手册2.这个函数使用了饱和运算。3.数值0x8000由于饱和运算将变成0x7FFF。17.1.4实例讲解实验目的:1.学习ComplexMathFunctions中复数共轭的求解(首先大家要明白什么是复数共轭)实验内容:1.按下按键K1,串口打印函数DSP_CONJ的输出结果实验现象:通过窗口上位机软件SecureCRT(V5光盘里面有此软件)查看打印信息现象如下:程序设计:8、/****************************************************************************************
3、:1.数组pSrc中存储的数据格式是(实部,虚部,实部,虚部……………),一定要按照这个顺序存储数据,比如数据1-j,j,2+3j这个三个数在数组中的存储格式就是:pSrc[6]={1,-1,0,1,2,3}。(注意第三个数据是0)。函数的输出结果pDst也是按照这个顺序存储的。17.1.2arm_cmplx_conj_q31公式描述:2015年01月15日版本:1.0第1页共12页安富莱UM403DSP教程STM32-V5开发板系统篇手册for(n=0;n4、+0];//实部pDst[(2*n)+1)]=-pSrc[(2*n)+1];//虚部}函数定义如下:voidarm_cmplx_conj_q31(q31_t*pSrc,q31_t*pDst,uint32_tnumSamples)参数定义:*pSrcpointstotheinputvector*pDstpointstotheoutputvectornumSamplesnumberofcomplexsamplesineachvector注意事项:1.数组pSrc中存储的数据格式是(实部,虚部,实部,虚部……………),一定要按照这个顺序存储数据,5、比如数据1-j,j,2+3j这个三个数在数组中的存储格式就是:pSrc[6]={1,-1,0,1,2,3}。(注意第三个数据是0)。函数的输出结果pDst也是按照这个顺序存储的。2.这个函数使用了饱和运算。3.数值0x80000000由于饱和运算将变成0x7FFFFFFF。17.1.3arm_cmplx_conj_q15公式描述:for(n=0;n6、m_cmplx_conj_q15(q15_t*pSrc,q15_t*pDst,uint32_tnumSamples)参数定义:*pSrcpointstotheinputvector*pDstpointstotheoutputvectornumSamplesnumberofcomplexsamplesineachvector注意事项:1.数组pSrc中存储的数据格式是(实部,虚部,实部,虚部……………),一定要按照这个顺序存储数据,比如数据1-j,j,2+3j这个三个数在数组中的存储格式就是:pSrc[6]={1,-1,0,1,2,3}。(注7、意第三个数据是0)。函数的输出结果pDst也是按照这个顺序存储的。2015年01月15日版本:1.0第2页共12页安富莱UM403DSP教程STM32-V5开发板系统篇手册2.这个函数使用了饱和运算。3.数值0x8000由于饱和运算将变成0x7FFF。17.1.4实例讲解实验目的:1.学习ComplexMathFunctions中复数共轭的求解(首先大家要明白什么是复数共轭)实验内容:1.按下按键K1,串口打印函数DSP_CONJ的输出结果实验现象:通过窗口上位机软件SecureCRT(V5光盘里面有此软件)查看打印信息现象如下:程序设计:8、/****************************************************************************************
4、+0];//实部pDst[(2*n)+1)]=-pSrc[(2*n)+1];//虚部}函数定义如下:voidarm_cmplx_conj_q31(q31_t*pSrc,q31_t*pDst,uint32_tnumSamples)参数定义:*pSrcpointstotheinputvector*pDstpointstotheoutputvectornumSamplesnumberofcomplexsamplesineachvector注意事项:1.数组pSrc中存储的数据格式是(实部,虚部,实部,虚部……………),一定要按照这个顺序存储数据,
5、比如数据1-j,j,2+3j这个三个数在数组中的存储格式就是:pSrc[6]={1,-1,0,1,2,3}。(注意第三个数据是0)。函数的输出结果pDst也是按照这个顺序存储的。2.这个函数使用了饱和运算。3.数值0x80000000由于饱和运算将变成0x7FFFFFFF。17.1.3arm_cmplx_conj_q15公式描述:for(n=0;n6、m_cmplx_conj_q15(q15_t*pSrc,q15_t*pDst,uint32_tnumSamples)参数定义:*pSrcpointstotheinputvector*pDstpointstotheoutputvectornumSamplesnumberofcomplexsamplesineachvector注意事项:1.数组pSrc中存储的数据格式是(实部,虚部,实部,虚部……………),一定要按照这个顺序存储数据,比如数据1-j,j,2+3j这个三个数在数组中的存储格式就是:pSrc[6]={1,-1,0,1,2,3}。(注7、意第三个数据是0)。函数的输出结果pDst也是按照这个顺序存储的。2015年01月15日版本:1.0第2页共12页安富莱UM403DSP教程STM32-V5开发板系统篇手册2.这个函数使用了饱和运算。3.数值0x8000由于饱和运算将变成0x7FFF。17.1.4实例讲解实验目的:1.学习ComplexMathFunctions中复数共轭的求解(首先大家要明白什么是复数共轭)实验内容:1.按下按键K1,串口打印函数DSP_CONJ的输出结果实验现象:通过窗口上位机软件SecureCRT(V5光盘里面有此软件)查看打印信息现象如下:程序设计:8、/****************************************************************************************
6、m_cmplx_conj_q15(q15_t*pSrc,q15_t*pDst,uint32_tnumSamples)参数定义:*pSrcpointstotheinputvector*pDstpointstotheoutputvectornumSamplesnumberofcomplexsamplesineachvector注意事项:1.数组pSrc中存储的数据格式是(实部,虚部,实部,虚部……………),一定要按照这个顺序存储数据,比如数据1-j,j,2+3j这个三个数在数组中的存储格式就是:pSrc[6]={1,-1,0,1,2,3}。(注
7、意第三个数据是0)。函数的输出结果pDst也是按照这个顺序存储的。2015年01月15日版本:1.0第2页共12页安富莱UM403DSP教程STM32-V5开发板系统篇手册2.这个函数使用了饱和运算。3.数值0x8000由于饱和运算将变成0x7FFF。17.1.4实例讲解实验目的:1.学习ComplexMathFunctions中复数共轭的求解(首先大家要明白什么是复数共轭)实验内容:1.按下按键K1,串口打印函数DSP_CONJ的输出结果实验现象:通过窗口上位机软件SecureCRT(V5光盘里面有此软件)查看打印信息现象如下:程序设计:
8、/****************************************************************************************
此文档下载收益归作者所有