數字帶通濾波器c語言程序,C語言編寫FIR數字低通濾波器

主要是獲取濾波器參數和卷積算法,參數根據自己的濾波器特性用matlab上面的一個fdatool工具配置生成,然后將這些參數寫入程序里面即可(參數可適當的乘以一個系數,對濾波沒任何影響),我這里Fs = 2k,Fpass= 1k,Fstop = 2k,至于輸入數據你可以自己產生幾個不同頻率正弦波的疊加。我這里隨便給的一個輸入例子:

f1=1k,f2=6k,fs=20k

采樣數據:200

3012-35-2 -10911-14-18-10-19-1213 7-10-14-3 153010-35 -4-9119-16 -17-10 -20-9 144-1113 -317297-2 5-5-8127 -17-16 -11-20 -7152-102 2-220285 -25-7-614 4-19-15-12-20-415 0-1031-1 22263-15 -8-4142-20 -13-12 -20-1 15-2-940 1252510 4-9-215-1 -20-12 -13-20 214-4-85 -132622-1 13-10015 -4-20 -12-15 -19414-6-7 5-252820 -222-102 15-7-20-11-16-177 12-8-55-2 72917-33 1-11414-9 -20-10 -17-16 911-9-45 -3103015-3 4-1-10713 -12-19 -10-18 -1411 9-10-25-3 1230

39階參數:

110-2-5 -9-13 -18-22 -23-21 -130173964 88109 124133 133124 10988 6439170-13 -21-23 -22-18 -13-9 -5-2011

#include

#include

#define samples 200

#define taps 40

int input[samples] = {30,12,-3,5,-2,-10,9,11,-14,-18,-10,-19,-12,13,7,-10,-1,4,-3,15,30,10,-3,5,-4,-9,11,9,-16,-17,-10,-20,-9,14,4,-11,1,3,-3,17,29,7,-2,5,-5,-8,12,7,-17,-16,-11,-20,-7,15,2,-10,2,2,-2,20,28,5,-2,5,-7,-6,14,4,-19,-15,-12,-20,-4,15,0,-10,3,1,-1,22,26,3,-1,5,-8,-4,14,2,-20,-13,-12,-20,-1,15,-2,-9,4,0,1,25,25,1,0,4,-9,-2,15,-1,-20,-12,-13,-20,2,14,-4,-8,5,-1,3,26,22,-1,1,3,-10,0,15,-4,-20,-12,-15,-19,4,14,-6,-7,5,-2,5,28,20,-2,2,2,-10,2,15,-7,-20,-11,-16,-17,7,12,-8,-5,5,-2,7,29,17,-3,3,1,-11,4,14,-9,-20,-10,-17,-16,9,11,-9,-4,5,-3,10,30,15,-3,4,-1,-10,7,13,-12,-19,-10,-18,-14,11,9,-10,-2,5,-3,12,30};

int output[samples];

int coefficients[taps] = {1,1,0,-2,-5,-9,-13,-18,-22,-23,-21,-13,0,17,39,64,88,109,124,133,133,124,109,88,64,39,17,0,-13,-21,-23,-22,-18,-13,-9,-5,-2,0,1,1};

int state[taps+1]={0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};

main()

{

int temp;

int i;

int j;

int k;

for (k = 0; k < samples; k++)

{

state[0] = input[k];

for (i = 0, temp = 0; i < taps; i++)

temp += coefficients[i] * state[i];

output[k] = temp;

for (j = taps-1; j > -1 ; j--)

state[j+1] = state[j];

}

for( i = 0; i<200;i++){

printf("%d,",&output[i]);

}

exit(0);

}

下面使用matlab仿真的結果

fs =20000; f1 = 1000; f2 = 3000; f3 = 6000; ? T=10*10^(-3); t=linspace(0,T,fs*T); y =round(10*cos(2*pi*f1*t)+10*cos(2*pi*f2.*t)+10*cos(2*pi*f3.*t)); lpf=[11 0-2-5-9-13 -18-22 -23-21 -130173964 88109 124133 133124 10988 6439170-13 -21-23 -22-18 -13-9 -5-2011] ? y1 =conv(y,lpf); ? ? figure; plot(y); figure; plot(y1);

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/536585.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/536585.shtml
英文地址,請注明出處:http://en.pswp.cn/news/536585.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

瀏覽器攔截跨域請求處理方法(已阻止跨源請求:同源策略禁止讀取遠程資源)

原文地址&#xff1a;http://my.oschina.net/lichaoqiang/blog/317823 在瀏覽器請求中&#xff0c;出現跨域訪問資源的問題&#xff0c;我們肯定會遇到。如果跨域請求被阻止&#xff0c;有可能導致css、js 、ajax請求、font字體等資源出現無法正常訪問的問題。接下來&#xff0…

C程序設計語言上機13,《高級語言程序設計》北大上機試題(十三)

C語言上機試題&#xff1a;131&#xff0e;題目&#xff1a;編一C程序&#xff0c;其功能是能把讀入一串英文單詞(以單詞end做為結束標記&#xff0c;單個單詞字母數≤20)&#xff0c;并按字典順序輸出。(注&#xff1a;可執行程序命名為e13_1.exe)程序設計&#xff1a;#includ…

Activiti6.0 java項目框架 spring5 SSM 工作流引擎 審批流程

即時通訊&#xff1a;支持好友&#xff0c;群組&#xff0c;發圖片、文件&#xff0c;消息聲音提醒&#xff0c;離線消息&#xff0c;保留聊天記錄 &#xff08;即時聊天功能支持手機端&#xff0c;詳情下面有截圖&#xff09;工作流模塊-------------------------------------…

c語言變量強制轉換,C語言——“=”中的強制類型轉換

前言&#xff1a;在寫程序時候遇到了一些關于數據類型轉換的問題&#xff0c;編譯器也沒有報錯&#xff0c;運行時才發現數據不對&#xff0c;找bug花費了很多時間&#xff0c;但最終也發現是一些細節上的問題&#xff0c;特地在這里整理出一篇文章記錄。實驗環境&#xff1a;芯…

Spring框架IOC和AOP的實現原理(概念)

IoC&#xff08;Inversion of Control&#xff09; (1). IoC&#xff08;Inversion of Control&#xff09;是指容器控制程序對象之間的關系&#xff0c;而不是傳統實現中&#xff0c;由程序代碼直接操控。控制權由應用代碼中轉到了外部容器&#xff0c;控制權的轉移是所謂反…

面向視頻的全新AI架構 —— 阿里云智能視覺技術全解

2019獨角獸企業重金招聘Python工程師標準>>> 我們都知道&#xff0c;AI技術正在以可見的速度被應用于各行各業&#xff0c;然而絕大部分業務場景想應用AI技術&#xff0c;都需要算法工程師根據自身業務的標注數據&#xff0c;來進行單獨訓練&#xff0c;才能打磨出合…

c語言鞏固,鞏固一下C語言中的指針

寫了幾段代碼&#xff0c;再鞏固一下C語言知識。我的記憶方法跟文章中的不一樣。*是取值符號&#xff0c;&取地址符號&#xff0c;()限定子表達式的符號,[]是按索引取數組乘員的符號。優先級方面()>[]>*,&。對于int *(*p(int))[3]; 。我是這么分析的&#xff1a;…

c語言程序設計課程設計學生信息管理系統,C語言程序設計課程設計報告----學生信息管理系統.doc...

河南理工大學計算機學院《C語言程序設計》課程設計報告題目&#xff1a; 學生信息管理系統專業&#xff1a; 計算機科學與技術班級&#xff1a; 計算機XX班學號&#xff1a; 311009033232姓名&#xff1a; *****日期&#xff1a;2012年3月21日1.2意義熟悉C語言程序的編程環境、…

【轉】利用python的KMeans和PCA包實現聚類算法

轉自&#xff1a;https://www.cnblogs.com/yjd_hycf_space/p/7094005.html 題目&#xff1a; 通過給出的駕駛員行為數據&#xff08;trip.csv&#xff09;&#xff0c;對駕駛員不同時段的駕駛類型進行聚類,聚成普通駕駛類型&#xff0c;激進類型和超冷靜型3類 。 利用Python的s…

c 語言str.size,C/C++ strlen(str)和str.length()和str.size()的區別

strlen(str)和str.length()和str.size()都可以求字符串長度,返回字符串中字符的長度&#xff0c;不包括‘/0’。其中str.length()和str.size()是同義詞&#xff0c;返回同樣的值。strlen(str)是用于求字符數組的長度&#xff0c;其參數是char*。#include #include using namesp…

想跑次高頻策略?快來看看Numpy處理真格量化tick數據的技巧

使用澎博真格量化時&#xff0c;很多用戶希望用numpy處理tick數據&#xff0c;包括tick數據的留存和運算。 這里有一些技巧。 因為tick數據量比較大&#xff0c;為了降低系統的運算負擔&#xff0c;我們不應該在內存里保存大量tick數據。 比如我們只想保存過去10個tick。 可以在…

if語句寫階躍函數C語言,C語言第四章分支語句.ppt

C語言第四章分支語句.ppt例&#xff1a; 輸入三個實數&#xff0c;按從小到大的順序輸出。 main( ) {float a,b,c,t; scanf(“%f,%f,%f ”,&a,&b,&c); if (a>b) { ta; ab; bt; } if (a>c) { ta; ac; ct; } if (b>c) { tb; bc; ct; } printf(“%5.2f,%5.2f…

日本顯示屏巨頭JDI不敵業務壓力,宣布接受中方注資...

本次10億美元的融資金額中&#xff0c;其中7.2億美元據傳來自中國絲綢之路基金。 最初&#xff0c;在液晶領域日本企業一直都占據著主要市場&#xff0c;如夏普、NEC、東芝等。后來隨著韓國三星、LG的強勢進入&#xff0c;日本企業的生存空間開始被搶占&#xff0c;現如今中國…

c語言中 d 1是啥意思,空開D/C是什么意思?終于有人把它說清楚了!

原標題&#xff1a;空開D/C是什么意思&#xff1f;終于有人把它說清楚了&#xff01;空氣開關是每個人家里必用的東西&#xff0c;但是你到五金店一看&#xff0c;大大小小的開關插座多了去&#xff0c;讓人眼花繚亂。怎么選呢&#xff1f;空開有各種字母型號&#xff0c;這些字…

微信小程序開發 | 官方問答精選

2019獨角獸企業重金招聘Python工程師標準>>> SF問答精選《七》 多組件顯示與隱藏如何實現、function中的...SF問答精選《六》canvas不顯示問題SF問答精選《五》菜單內容左右聯動、生命周期函數SF問答精選《四》eslint 配置使用 co function&#xff1b;apache 反向代…

36歲自學C語言,C語言的數據類型

在C語言中&#xff0c;數據類型可以分為&#xff1a;基本數據類型&#xff0c;構造數據類型&#xff0c;指針類型&#xff0c;空類型四大類。基本數據類型基本數據類型最主要的特點是&#xff0c;其值不可以再分解為其他類型。也就是說&#xff0c;基本數據類型是自我說明。構造…

清北學堂培訓2019.4.4

第一次培訓&#xff0c;心情有點激動&#xff08;盡管沒了清明節&#xff09;&#xff0c;還見到了各地的dalao們&#xff0c;十分開森 Day 1&#xff08;李昊dalao&#xff09; 上午篇 上午呢&#xff0c;主要講了關于高精&#xff0c;快速冪&#xff0c;膜模意義下的運算&…

國二c語言作弊用u盤,計算機等級考試可以插u盤嗎(全國計算機等級考試報名系統官網)...

&#xff1a;不可以 會有嘀嘀嘀的報警聲的&#xff1a;我以前考時不讓帶的&#xff0c;人家讓你不能用優盤的話電腦會控制沒法用的。&#xff1a;首先肯定回你&#xff0c;不可以帶優盤或者其他作弊設備。很多計算機二級考點會把主機箱鎖死&#xff0c;根本插不了優盤。在你進入…

「SCOI2011」棘手的操作

傳送門 Description 有\(N\)個節點&#xff0c;標號從\(1\)到\(N\)&#xff0c;這\(N\)個節點一開始相互不連通。第$ i\(個節點的初始權值為\)a_i$ &#xff0c;接下來有如下一些操作&#xff1a; U x y 加一條邊&#xff0c;連接第 \(x\) 個節點和第\(y\) 個節點。 A1 x v 將…

swft c 語言 數組,如何在swift中實現數組的深拷貝

在Objective-C中如果想將一個數組賦值給另外一個數組&#xff0c;同時想讓兩個數組之間相互獨立(即改變其中的一個數組&#xff0c;不影響另外的一個)&#xff0c;有很多的辦法&#xff0c;比如我們可以直接copy,用類方法創建新數組。這樣得到的數組和原來的數組就是兩個完全獨…