DSPTMS320F2812的convolve例程
时间: 2023-10-04 08:03:57 浏览: 37
下面是DSPTMS320F2812的convolve例程:
```c
#include "DSP281x_Device.h"
#include "DSP281x_Examples.h"
#define N 16
#define M 4
#pragma DATA_SECTION(h, "coefficients")
int h[M] = {3276, 6553, 3276, -6553};
#pragma DATA_SECTION(x, "input")
int x[N] = {0, 8192, 16384, 24576, 32768, 24576, 16384, 8192, 0, -8192, -16384, -24576, -32768, -24576, -16384, -8192};
#pragma DATA_SECTION(y, "output")
int y[N + M - 1];
void convolve(int *x, int *h, int *y, int nx, int nh)
{
int i, j;
for (i = 0; i < nx + nh - 1; i++)
{
y[i] = 0;
for (j = 0; j < nh; j++)
{
if (i - j >= 0 && i - j < nx)
{
y[i] += x[i - j] * h[j];
}
}
}
}
void main(void)
{
InitSysCtrl();
convolve(x, h, y, N, M);
while (1);
}
```
此例程定义了两个数组,h 和 x,分别代表卷积核和输入信号。在 convolve 函数中,进行卷积运算,并将结果存储在 y 数组中。最后,将 convolve 函数应用于输入信号和卷积核,并将结果存储在 y 数组中。在 main 函数中,调用 convolve 函数并等待程序结束。
相关推荐
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![apk](https://img-home.csdnimg.cn/images/20210720083646.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)