一、输入
输入1:正弦信号=sin(2*pi*50*t); 长度为64;
输入2:阶跃信号=ones(1,N);长度为64;
二、结果
三、测试函数
#include "dsp_conv.h"
void conv_test(void)
{
u16 i=0;
static float32_t psac[64],psbc[64],pout[127];
for(i=0;i<64;i++)
{
psac[i]=arm_sin_f32(2*3.1415926*50*i/1000);
psbc[i]=1.0;
}
arm_conv_f32(psac,64,psbc,64,pout);
for(i=0;i<127;i++)
{
printf("%f\r\n",pout[i]);
}
}
四、主函数
/*
昆明电器科学研究所 张恩寿 2019年5月3日
*/
#include "bitband.h"
#include "led_config.h"
#include "systick.h"
#include "usart.h"
#include "spi_flash.h"
#include "tft.h"
#include "key_lookup.h"
#include "dsp_conv.h"
int main(void)
{
systick_config(120);
nvic_priority_group_set(NVIC_PRIGROUP_PRE2_SUB2);
usart0_init(115200);
led_init();
conv_test();
while(1)
{
led_on();
delay_nms(600);
led_off();
delay_nms(600);
}
}
五、总结
结果与MATLAB卷积结果一致,并且输出结果长度为64+64-1=127,符合卷积结论,效果非常好。
|
自己先顶一个