在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

單片機十種常見的濾波算法介紹

硬件攻城獅 ? 來源:嵌入式悅翔園 ? 作者:李斌 ? 2022-11-06 21:41 ? 次閱讀

前言

我們都知道,單片機的主要作用是控制外圍的器件,并實現一定的通信和數據處理。但在某些特定場合,不可避免地要用到數學運算,盡管單片機并不擅長實現算法和進行復雜的運算。

所以,今天將給大家介紹十種常見的濾波算法,希望這篇文章能對大家有所幫助。

一、限幅濾波

1、方法

根據經驗判斷兩次采樣允許的最大偏差值A

每次采新值時判斷:若本次值與上次值之差<=A,則本次有效;若本次值與上次值之差>A,本次無效,用上次值代替本次。

2、優缺點

克服脈沖干擾,無法抑制周期性干擾,平滑度差。

3、代碼

/* A值根據實際調,Value有效值,new_Value當前采樣值,程序返回有效的實際值*/
#defineA10
charValue;
charfilter()
{
charnew_Value;
new_Value=get_ad();//獲取采樣值
if(abs(new_Value-Value)>A)returnValue;//abs()取絕對值函數
returnnew_Value;
}

二、中位值濾波

1、方法

連續采樣N次,按大小排列

取中間值為本次有效值

2、優缺點

克服波動干擾,對溫度等變化緩慢的被測參數有良好的濾波效果,對速度等快速變化的參數不宜。

3、代碼

#defineN11
charfilter()
{
charvalue_buf[N];
charcount,i,j,temp;
for(count=0;countvalue_buf[i+1])
{
temp=value_buf[i];
value_buf[i]=value_buf[i+1];
value_buf[i+1]=temp;
}
returnvalue_buf[(N-1)/2];
}

三、算數平均濾波

1、方法

連續采樣N次,取平均

N較大時平滑度高,靈敏度低

N較小時平滑度低,靈敏度高

一般N=12

2、優缺點

適用于存在隨機干擾的系統,占用RAM多,速度慢。

3、代碼

#defineN12
charfilter()
{
intsum=0;
for(count=0;count

四、遞推平均濾波

1、方法

取N個采樣值形成隊列,先進先出

取均值

一般N=4~12

2、優缺點

對周期性干擾抑制性好,平滑度高

適用于高頻振動系統

靈敏度低,RAM占用較大,脈沖干擾嚴重

3、代碼

/* A值根據實際調,Value有效值,new_Value當前采樣值,程序返回有效的實際值*/
#defineA10
charValue;
charfilter()
{
charnew_Value;
new_Value=get_ad();//獲取采樣值
if(abs(new_Value-Value)>A)returnValue;//abs()取絕對值函數
returnnew_Value;
}

五、中位值平均濾波

1、方法

采樣N個值,去掉最大最小

計算N-2的平均值

N= 3~14

2、優缺點

融合了中位值,平均值的優點

消除脈沖干擾

計算速度慢,RAM占用大

3、代碼

charfilter()
{
charcount,i,j;
charValue_buf[N];
intsum=0;
for(count=0;countValue_buf[i+1])
{
temp=Value_buf[i];
Value_buf[i]=Value_buf[i+1];
Value_buf[i+1]=temp;
}
for(count=1;count

六、限幅平均濾波

1、方法

每次采樣數據先限幅后送入隊列

取平均值

2、優缺點

融合限幅、均值、隊列的優點

消除脈沖干擾,占RAM較多

3、代碼

#defineA10
#defineN12
charvalue,i=0;
charvalue_buf[N];
charfilter()
{
charnew_value,sum=0;
new_value=get_ad();
if(Abs(new_value-value)

七、一階滯后濾波

1、方法

取a=0~1

本次濾波結果=(1-a)* 本次采樣 + a * 上次結果

2、優缺點

良好一直周期性干擾,適用波動頻率較高場合

靈敏度低,相位滯后

3、代碼

/*為加快程序處理速度,取a=0~100*/
#definea30
charvalue;
charfilter()
{
charnew_value;
new_value=get_ad();
return((100-a)*value+a*new_value);
}

八、加權遞推平均濾波

1、方法

對遞推平均濾波的改進,不同時刻的數據加以不同權重,通常越新的數據權重越大,這樣靈敏度高,但平滑度低。

2、優缺點

適用有較大滯后時間常數和采樣周期短的系統,對滯后時間常數小,采樣周期長、變化慢的信號不能迅速反應其所受干擾。

3、代碼

/*coe數組為加權系數表*/
#defineN12
charcodecoe[N]={1,2,3,4,5,6,7,8,9,10,11,12};
charcodesum_coe={1+2+3+4+5+6+7+8+9+10+11+12};
charfilter()
{
charcount;
charvalue_buf[N];
intsum=0;
for(count=0;count

九、消抖濾波

1、方法

設置一個濾波計數器

將采樣值與當前有效值比較

若采樣值=當前有效值,則計數器清0

若采樣值不等于當前有效值,則計數器+1

若計數器溢出,則采樣值替換當前有效值,計數器清0

2、優缺點

對變化慢的信號濾波效果好,變化快的不好

避免臨界值附近的跳動,計數器溢出時若采到干擾值則無法濾波

3、代碼

#defineN12
charfilter()
{
charcount=0,new_value;
new_value=get_ad();
while(value!=new_value)
{
count++;
if(count>=N)returnnew_value;
new_value=get_ad();
}
returnvalue;
}

十、限幅消抖濾波

1、方法

先限幅 后消抖

2、優缺點

融合了限幅、消抖的優點

避免引入干擾值,對快速變化的信號不宜

3、代碼

#defineA10
#defineN12
charvalue;
charfilter()
{
charnew_value,count=0;
new_value=get_ad();
while(value!=new_value)
{
if(Abs(value-new_value)=N)returnnew_value;
new_value=get_ad();
}
returnvalue;
}
}
審核編輯:郭婷
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 單片機
    +關注

    關注

    6040

    文章

    44592

    瀏覽量

    636827

原文標題:學習單片機AD采樣必知的十大濾波算法!

文章出處:【微信號:mcu168,微信公眾號:硬件攻城獅】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    單片機調試常見問題與解決方法

    單片機調試是嵌入式系統開發中的一個重要環節,它涉及到對單片機程序的測試和優化,以確保系統能夠正常工作。在調試過程中,開發者可能會遇到各種問題。 1. 程序無法燒錄到單片機 問題描述: 在嘗試將程序
    的頭像 發表于 11-01 14:11 ?1063次閱讀

    如何實現51單片機與PC的串行通信

    51單片機與PC的串行通信是一常見的通信方式,它允許單片機通過串行接口與PC進行數據交換。
    的頭像 發表于 10-21 11:35 ?1165次閱讀

    單片機io口的四工作狀態

    )是單片機與外部世界進行數據交換的接口。每個I/O口可以配置為輸入或輸出狀態,或者同時具備這兩功能。I/O口的狀態可以通過編程來控制,以滿足不同的應用需求。 2. 單片機I/O口的工作原理 I/O口的工作原理涉及到數字電路的基
    的頭像 發表于 09-14 14:24 ?1835次閱讀

    單片機的三總線結構

    單片機的三總線結構包括地址總線(Address Bus, AB)、數據總線(Data Bus, DB)和控制總線(Control Bus, CB)。這三總線在單片機內部及與外部設備
    的頭像 發表于 09-10 11:32 ?3487次閱讀

    天學會單片機可能嗎?單片機入門需要多久?

    學習單片機的過程,就像學習任何其他技能一樣,不僅在于書本上的知識,更在于實踐和應用的能力。許多人可能會問:天能學會單片機嗎?答案是:可以,但這取決于你所定義的“學會”到什么程度。首先,讓我們明確
    的頭像 發表于 09-05 08:00 ?1183次閱讀
    <b class='flag-5'>十</b>天學會<b class='flag-5'>單片機</b>可能嗎?<b class='flag-5'>單片機</b>入門需要多久?

    stm32單片機引腳介紹及功能

    特點,廣泛應用于工業控制、消費電子、醫療設備、智能家居等領域。本文將介紹STM32單片機的引腳及其功能。 1. 引腳概述 STM32單片機的引腳數量和類型因型號而異,常見的有48引腳、
    的頭像 發表于 09-02 09:38 ?6455次閱讀

    十種常見硬件電路,你都用過沒(下)

    十種電路已經列舉完成了,分別是電源電路、放大電路、濾波電路、振蕩電路、調制解調電路、邏輯電路、開關電源電路、傳感器電路、混合信號電路、射頻電路。
    的頭像 發表于 08-01 18:55 ?2720次閱讀
    <b class='flag-5'>十種</b><b class='flag-5'>常見</b>硬件電路,你都用過沒(下)

    低通濾波器、高通濾波器、帶通濾波器的簡單介紹

    在信號處理領域,濾波器是一重要的電子元件或算法,用于從復雜信號中提取或抑制特定頻率成分。其中,低通濾波器、高通濾波器和帶通
    的頭像 發表于 07-09 18:04 ?1.9w次閱讀
    低通<b class='flag-5'>濾波</b>器、高通<b class='flag-5'>濾波</b>器、帶通<b class='flag-5'>濾波</b>器的簡單<b class='flag-5'>介紹</b>

    PLC與單片機的區別是什么

    在工業自動化和電子領域中,PLC(Programmable Logic Controller,可編程邏輯控制器)和單片機(Single-Chip Microcomputer)是兩常見的控制設備
    的頭像 發表于 05-28 16:11 ?1980次閱讀

    STM32單片機有哪幾種常見的開發環境?

    STM32單片機是一款廣泛應用于嵌入式系統開發的單片機,針對其開發,有以下幾種常見的方式:STM32單片機有哪幾種常見的開發環境?KeilM
    的頭像 發表于 05-18 08:04 ?3179次閱讀
    STM32<b class='flag-5'>單片機</b>有哪幾種<b class='flag-5'>常見</b>的開發環境?

    STM32的ADC項目應用,用什么算法濾波和穩定數據抖動?

    STM32的ADC項目應用,大家都用什么算法濾波和穩定數據抖動。 ADC數據的抖動有時候應用在項目上讓人很是頭疼,什么度娘濾波算法也是要
    發表于 04-17 08:20

    新手學習單片機常見的六大誤區!

    ,扮演著至關重要的角色。然而,學習單片機并非一帆風順,初學者常常會面臨各種挑戰和困惑。因此,了解并避免新手常見的誤區,將有助于使學習過程更加順利和愉快。新手學習單
    的頭像 發表于 03-28 08:03 ?906次閱讀
    新手學習<b class='flag-5'>單片機</b>最<b class='flag-5'>常見</b>的六大誤區!

    單片機抗干擾措施有哪些?

    電磁干擾(EMI)問題日益成為影響單片機穩定性與可靠性的主要障礙。因此,探討和實施有效的抗干擾措施對于提高單片機系統的性能至關重要。下面為大家簡單介紹
    的頭像 發表于 03-15 16:36 ?2690次閱讀
    <b class='flag-5'>單片機</b>抗干擾措施有哪些?

    單片機的最小系統由什么組成 單片機的最小系統包括哪些

    Unit,CPU)、存儲器、輸入輸出接口電路等核心功能,常見單片機有以8051為代表的8位單片機、PIC系列單片機和AVR系列單片機等。
    的頭像 發表于 02-02 11:27 ?1.1w次閱讀

    單片機編程實例介紹

    是指使用特定的編程語言編寫控制單片機工作的程序。 在本文中,將為您提供一些常見單片機編程實例,包括基礎應用、傳感器應用、通信應用等方面的案例。 一、基礎應用 LED流水燈 流水燈是最基本的
    的頭像 發表于 01-16 09:37 ?2661次閱讀
    主站蜘蛛池模板: 黄色大全片| 国产色视频网站免费观看| 亚洲成在人线中文字幕| 中文字幕天天躁夜夜狠狠综合| 欧美一区二区不卡视频| 黑人一区二区三区中文字幕| 国产精品久久久精品三级 | 大黄香蕉| 夜夜视频| 深夜视频在线观看免费| 毛片福利| 免费看啪啪网站| 美女扒开尿口给男人看的让| 在线免费观看一级毛片| 婷婷天堂| 免费爱爱视频网站| 国产免费一区二区三区| 午夜视频免费在线播放| 欧美成人天天综合天天在线 | 国产成人高清| 午夜aaaaaaaaa视频在线| 欧美操bb| toyota东热综合网| 最新毛片网| 日韩免费一级毛片| 国产精品一一在线观看| 午夜影院一区二区三区| 久草资源免费| 羞羞视频靠逼视频大全| 性做久久久久久久免费看| 欧洲无线区一二区| 国产成人一区二区三中文| 天天插天天搞| 日本janpanese护士bus中国| 久久精品免费在线观看| 色多多网| 丁香花五月天婷婷| 美女被免费视频的网站| 亚洲精品播放| 色综合久久久久久久久五月性色| 久久精品亚洲精品国产欧美|