91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 3KB
    文件類型: .zip
    金幣: 2
    下載: 1 次
    發布日期: 2021-06-18
  • 語言: C/C++
  • 標簽: STM32??濾波器??

資源簡介

19階FIR濾波器c語言算法實現,系數根據需要用matlab可以設計計算,數據的數據量為512點或256點

資源截圖

代碼片段和文件信息

/*
?*?ADfilter.c
?*
?*??Created?on:?Aug?29?2018
?*??????Author:?Administrator
?*/
#include?“ADfilter.h“


//去直流,1024個點的直流,注意輸入的數據為整形
void?De_DC(int?a[]float?b[])
{
double?sum;
unsigned?int?i;
for(i=0;i<1024;i++)
{
sum?=?sum?+(float)(*(a+i));
}
sum?=?sum/1024;
for(i=0;i<1024;i++)
{
*(b+i)=*(a+i)-sum;
}
}


//18階fir濾波器,處理1024個點的數據
void?fir_filter(float?data[]float?h[]int?fird_lenfloat?result[])
{
//這里的臨時數組state必須賦初始值,不然初始值不為0,導致前幾個數據計算錯誤。
float?state[19]={0000000000000000000};
float?temp?=?0.0;???
int?ijk;?
for?(k?=?0;?k? {
state[0]?=?*(data+k);
temp=0;
for?(i?=?0;?i? temp?=?temp?+?*(h+i)?*?*(state+i);
result[k]?=?temp;
for?(j?=?(firc_len-2);?j?>?-1?;?j--)
state[j+1]?=?state[j];
}
}

//抽樣函數,1024個點,抽取512個
void?fir_512samp(float?data[]float?result[])
{
unsigned?int?i;
for(i=0;i<512;i++)
{
result[i]=data[i*2];
}
}

//抽樣函數,512個點,抽取256個
void?fir_256samp(float?data[]float?result[])
{
unsigned?int?i;
for(i=0;i<256;i++)
{
result[i]=data[i*2];
}
}

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件?????????361??2018-08-31?18:03??ADfilter.h
?????文件????????3367??2018-09-03?11:14??main.c
?????文件????????1212??2018-09-03?10:54??ADfilter.c

評論

共有 條評論