《電子技術應用》
您所在的位置:首頁 > 其他 > 業界動態 > 單片機數字濾波算法,看這篇

單片機數字濾波算法,看這篇

2021-09-17
來源:EDN電子技術設計
關鍵詞: 單片機 數字濾波

  單片機主要作用是控制外圍的器件,并實現一定的通信和數據處理。但在某些特定場合,不可避免地要用到數學運算,盡管單片機并不擅長實現算法和進行復雜的運算。下面主要是介紹如何用單片機實現數字濾波。

  在單片機進行數據采集時,會遇到數據的隨機誤差,隨機誤差是由隨機干擾引起的,其特點是在相同條件下測量同一量時,其大小和符號會現無規則的變化而無法預測,但多次測量的結果符合統計規律。為克服隨機干擾引起的誤差,硬件上可采用濾波技術,軟件上可采用軟件算法實現數字濾波。濾波算法往往是系統測控算法的一個重要組成部分,實時性很強。

  采用數字濾波算法克服隨機干擾的誤差具有以下優點:

  1、數字濾波無需其他的硬件成本,只用一個計算過程,可靠性高,不存在阻抗匹配問題。尤其是數字濾波可以對頻率很低的信號進行濾波,這是模擬濾波器做不到的。

  2、數字濾波使用軟件算法實現,多輸入通道可共用一個濾波程序,降低系統開支。

  3、只要適當改變濾波器的濾波程序或運算,就能方便地改變其濾波特性,這對于濾除低頻干擾和隨機信號會有較大的效果。

  4、在單片機系統中常用的濾波算法有限幅濾波法、中值濾波法、算術平均濾波法、加權平均濾波法、滑動平均濾波等。

 ?。?)限幅濾波算法

  該運算的過程中將兩次相鄰的采樣相減,求出其增量,然后將增量的絕對值,與兩次采樣允許的最大差值A進行比較。A的大小由被測對象的具體情況而定,如果小于或等于允許的最大差值,則本次采樣有效;否則取上次采樣值作為本次數據的樣本。

  算法的程序代碼如下:

  #defineA //允許的最大差值

  chardata; //上一次的數據

  char filter()

  {

  chardatanew; //新數據變量

  datanew=get_data(); //獲得新數據變量

  if((datanew-data)>A||(data-datanew>A))

  return data;

  else

  returndatanew;

  }

  說明:限幅濾波法主要用于處理變化較為緩慢的數據,如溫度、物體的位置等。使用時,關鍵要選取合適的門限制A。通常這可由經驗數據獲得,必要時可通過實驗得到。

 ?。?)中值濾波算法

  該運算的過程是對某一參數連續采樣N次(N一般為奇數),然后把N次采樣的值按從小到大排列,再取中間值作為本次采樣值,整個過程實際上是一個序列排序的過程。

  算法的程序代碼如下:

  #define N11 //定義獲得的數據個數

  char filter()

  {

  charvalue_buff[N]; //定義存儲數據的數組

  char count,i,j,temp;

  for(count=0;count

  {

  value_buf[count]=get_data();

  delay(); //如果采集數據比較慢,那么就需要延時或中斷

  }

  for(j=0;j

  {

  for(value_buff[i]>value_buff[i+1]

  {

  temp=value_buff[i];

  value_buff[i]=value_buff[i+1];

  value_buff[i+1]=temp;

  }

  }

  returnvalue_buff[(N-1)/2];

  }

  說明:中值濾波比較適用于去掉由偶然因素引起的波動和采樣器不穩定而引起的脈動干擾。若被測量值變化比較慢,采用中值濾波法效果會比較好,但如果數據變化比較快,則不宜采用此方法。

 ?。?)算術平均濾波算法

  該算法的基本原理很簡單,就是連續取N次采樣值后進行算術平均。

  算法的程序代碼如下:

  char filter()

  {

  int sum=0;

  for(count=0;count

  {

  sum+=get_data();

  delay():

  }

  return (char)(sum/N);

  }

  說明:算術平均濾波算法適用于對具有隨機干擾的信號進行濾波。這種信號的特點是有一個平均值,信號在某一數值附近上下波動。信號的平均平滑程度完全到決于N值。當N較大時,平滑度高,靈敏度低;當N較小時,平滑度低,但靈敏度高。為了方便求平均值,N一般取4、8、16、32之類的2的整數冪,以便在程序中用移位操作來代替除法。

 ?。?)加權平均濾波算法

  由于前面所說的“算術平均濾波算法”存在平滑度和靈敏度之間的矛盾。為了協調平滑度和靈敏度之間的關系,可采用加權平均濾波。它的原理是對連續N次采樣值分別乘上不同的加權系數之后再求累加,加權系數一般先小后大,以突出后面若干采樣的效果,加強系統對參數變化趨勢的認識。各個加權系數均小于1的小數,且滿足總和等于1的結束條件。這樣加權運算之后的累加和即為有效采樣值。其中加權平均數字濾波的數學模型是:

  式中:D為N個采樣值的加權平均值:XN-i為第N-i次采樣值;N為采樣次數;Ci為加權系數。加權系數Ci體現了各種采樣值在平均值中所占的比例。一般來說采樣次數越靠后,取的比例越大,這樣可增加新采樣在平均值中所占的比重。加權平均值濾波法可突出一部分信號抵制另一部分信號,以提高采樣值變化的靈敏度。

  樣例程序代碼如下:

  char codejq[N]={1,2,3,4,5,6,7,8,9,10,11,12}; //code數組為加權系數表,存在程序存儲區

  char codesum_jq=1+2+3+4+5+6+7+8+9+10+11+12;

  char filter()

  {

  char count;

  char value_buff[N];

  int sum=0;

  for(count=0;count

  {

  value_buff[count]=get_data();

  delay();

  }

  for(count=0;count

  sum+=value_buff[count]*jq[count];

  return(char)(sum/sum_jq);

  }

 ?。?)滑動平均濾波算法

  以上介紹和各種平均濾波算法有一個共同點,即每獲取一個有效采樣值必須連續進行若干次采樣,當采速度慢時,系統的實時得不到保證。這里介紹的滑動平均濾波算法只采樣一次,將一次采樣值和過去的若干次采樣值一起求平均,得到的有效采樣值即可投入使用。如果取N個采樣值求平均,存儲區中必須開辟N個數據的暫存區。每新采集一個數據便存入暫存區中,同時去掉一個最老數據,保存這N個數據始終是最新更新的數據。采用環型隊列結構可以方便地實現這種數據存放方式。

  程序代碼如下:

  char value_buff[N];

  char i=0;

  char filter()

  {

  char count;

  int sum=0;

  value_buff[i++]=get_data();

  if(i==N)

  i=0;

  for(count=0;count

  sum=value_buff[count];

  return (char)(sum/N);

  }

 ?。?)低通濾波

  將普通硬件RC低通濾波器的微分方程用差分方程來表求,變可以采用軟件算法來模擬硬件濾波的功能,經推導,低通濾波算法如下:

  Yn=a* Xn+(1-a) *Yn-1

  式中 Xn——本次采樣值

  Yn-1——上次的濾波輸出值;

  ,a——濾波系數,其值通常遠小于1;

  Yn——本次濾波的輸出值。

  由上式可以看出,本次濾波的輸出值主要取決于上次濾波的輸出值(注意不是上次的采樣值,這和加權平均濾波是有本質區別的),本次采樣值對濾波輸出的貢獻是比較小的,但多少有些修正作用,這種算法便模擬了具體有教大慣性的低通濾波器功能。濾波算法的截止頻率可用以下式計算:

  fL=a/2Pit pi為圓周率3.14…

  式中 a——濾波系數;

  , t——采樣間隔時間;

  例如:當t=0.5s(即每秒2次),a=1/32時;

  fL=(1/32)/(2*3.14*0.5)=0.01Hz

  當目標參數為變化很慢的物理量時,這是很有效的。另外一方面,它不能濾除高于1/2采樣頻率的干攪信號,本例中采樣頻率為2Hz,故對1Hz以上的干攪信號應采用其他方式濾除,

  低通濾波算法程序于加權平均濾波相似,但加權系數只有兩個:a和1-a。為計算方便,a取一整數,1-a用256-a,來代替,計算結果舍去最低字節即可,因為只有兩項,a和1-a,均以立即數的形式編入程序中,不另外設表格。雖然采樣值為單元字節(8位A/D)。為保證運算精度,濾波輸出值用雙字節表示,其中一個字節整數,一字節小數,否則有可能因為每次舍去尾數而使輸出不會變化。

  設Yn-1存放在30H(整數)和31H(小數)兩單元中,Yn存放在32H(整數)和33H(小數)中。


本站內容除特別聲明的原創文章之外,轉載內容只為傳遞更多信息,并不代表本網站贊同其觀點。轉載的所有的文章、圖片、音/視頻文件等資料的版權歸版權所有權人所有。本站采用的非本站原創文章及圖片等內容無法一一聯系確認版權者。如涉及作品內容、版權和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經濟損失。聯系電話:010-82306118;郵箱:aet@chinaaet.com。
热re99久久精品国产66热_欧美小视频在线观看_日韩成人激情影院_庆余年2免费日韩剧观看大牛_91久久久久久国产精品_国产原创欧美精品_美女999久久久精品视频_欧美大成色www永久网站婷_国产色婷婷国产综合在线理论片a_国产精品电影在线观看_日韩精品视频在线观看网址_97在线观看免费_性欧美亚洲xxxx乳在线观看_久久精品美女视频网站_777国产偷窥盗摄精品视频_在线日韩第一页
  • <strike id="ygamy"></strike>
  • 
    
      • <del id="ygamy"></del>
        <tfoot id="ygamy"></tfoot>
          <strike id="ygamy"></strike>
          免费在线一区二区| 在线观看欧美亚洲| 国产精品你懂的| 欧美日本一道本| 久久精品系列| 欧美激情导航| 国模叶桐国产精品一区| 欧美在线观看一二区| 一个色综合导航| 亚洲黄色免费| 久久久久久噜噜噜久久久精品| 玖玖玖国产精品| 亚洲激情网站免费观看| 亚洲国语精品自产拍在线观看| 亚洲欧美国产三级| 欧美人与禽猛交乱配视频| 欧美专区福利在线| 国产一区二区在线观看免费| 国产精品www网站| 亚洲在线视频免费观看| 日韩午夜激情av| 欧美日韩视频在线一区二区观看视频| 久久国产一区二区| 国产精品夫妻自拍| 亚洲国产欧美一区二区三区久久| 新片速递亚洲合集欧美合集| 亚洲高清在线精品| 欧美激情一区二区三区在线视频| 国内自拍视频一区二区三区| 国产精品美女www爽爽爽| 亚洲第一级黄色片| 欧美在线你懂的| 欧美日韩一区二区三区在线观看免| 国产亚洲精品久久久久久| 亚洲国产精品视频一区| 国产女主播一区二区三区| 久久久久久9| 红桃视频国产精品| 国产夜色精品一区二区av| 国产精品欧美精品| 欧美色视频日本高清在线观看| 性欧美超级视频| 黄色国产精品一区二区三区| 国产精品一区久久| 99视频精品全部免费在线| 99国内精品久久久久久久软件| 一本久久综合亚洲鲁鲁五月天| 久久久久国产一区二区三区四区| 欧美制服第一页| 亚洲网站啪啪| 在线免费高清一区二区三区| 性做久久久久久免费观看欧美| 欧美日韩精品久久久| 精品福利av| 国产日韩欧美视频| 激情综合亚洲| 欧美制服丝袜第一页| 久久成人羞羞网站| 影音先锋成人资源站| 老司机免费视频一区二区| 欧美日韩国产在线播放| 久久久一区二区三区| 国产精品一区二区男女羞羞无遮挡| 极品尤物久久久av免费看| 亚洲一区二区四区| 免费一区二区三区| 欧美日本精品在线| 亚洲激情av在线| 黄色国产精品一区二区三区| 免费亚洲婷婷| 国产欧美韩国高清| 久久九九久久九九| 国产精品久久久久久久浪潮网站| 亚洲国产欧美在线| 一区二区三区日韩| 久久久久久久综合日本| 国产精品老牛| 在线观看亚洲视频啊啊啊啊| 欧美日韩在线免费观看| 久久精品日韩一区二区三区| 黄色国产精品一区二区三区| 久久不射网站| 99国产精品国产精品毛片| 亚洲精品视频一区二区三区| 欧美精品免费观看二区| 国产美女高潮久久白浆| 亚洲精品在线观| 日韩亚洲欧美中文三级| 午夜天堂精品久久久久| 国产精品美女久久福利网站| 黄色一区三区| 国产精品国产三级国产aⅴ9色| 欧美日韩国产在线一区| 亚洲激情在线视频| 久久精品一二三区| 亚洲欧美一区二区原创| 欧美日韩精品一本二本三本| 最新中文字幕一区二区三区| 激情欧美一区二区| 极品少妇一区二区三区精品视频| 国产日韩一区欧美| 伊人成人在线| 欧美在线免费播放| 日韩一级精品视频在线观看| 亚洲国产专区校园欧美| 亚洲欧洲综合另类在线| 欧美日韩第一页| 一区二区三区在线免费视频| 亚洲成色精品| 亚洲国产高清一区| 欧美一级二级三级蜜桃| 国精产品99永久一区一区| 亚洲婷婷综合久久一本伊一区| 亚洲大片一区二区三区| 亚洲欧美偷拍卡通变态| 美女爽到呻吟久久久久| 韩日午夜在线资源一区二区| 国产精品xxx在线观看www| 99这里只有久久精品视频| 乱中年女人伦av一区二区| 亚洲欧洲一区二区三区久久| 国产精品久久久99| 亚洲国产mv| 在线亚洲观看| 久久免费视频网站| 欧美区二区三区| 蜜乳av另类精品一区二区| 欧美在线看片| 国产精品网站在线| 日韩视频在线你懂得| 日韩一区二区精品在线观看| 欧美1级日本1级| 久久精品国产99精品国产亚洲性色| 国产精品裸体一区二区三区| 欧美黄色小视频| 亚洲一区二区三区视频播放| 欧美精品在线免费| 久久免费少妇高潮久久精品99| 亚洲一区二区三区精品在线观看| 亚洲图片欧美日产| 妖精视频成人观看www| 亚洲欧美成人一区二区三区| 国产一区二区三区在线观看免费视频| 午夜精品一区二区三区在线视| 欧美寡妇偷汉性猛交| 亚洲一区二区高清视频| 欧美日韩在线播放| 美玉足脚交一区二区三区图片| 欧美在线免费视屏| 99精品欧美一区二区三区综合在线| 欧美黄色小视频| 黑人中文字幕一区二区三区| 国产综合欧美| 亚洲国产另类久久久精品极度| 国产精品hd| 一区在线电影| 久久精品国产亚洲精品| 欧美另类变人与禽xxxxx| 国产精品成人一区二区艾草| 欧美三级午夜理伦三级中文幕| 久久精品夜夜夜夜久久| 葵司免费一区二区三区四区五区| 国产色综合网| 麻豆精品国产91久久久久久| 亚洲香蕉伊综合在人在线视看| 欧美激情bt| 久久久精品国产99久久精品芒果| 亚洲专区一区二区三区| 久久精品二区| 国产精品美女一区二区在线观看| 亚洲欧美综合网| 久久综合中文字幕| 欧美高清在线一区二区| 亚洲国产精品久久久久| 欧美精品1区2区3区| 欧美一区二区三区四区在线观看| 亚洲伦理中文字幕| 国产精品av久久久久久麻豆网| 国产模特精品视频久久久久| 欧美激情综合亚洲一二区| 狠狠色综合一区二区| 亚洲国产日韩一区二区| 宅男66日本亚洲欧美视频| 国产欧美日韩伦理| av不卡在线| 久久久久久久久久久久久女国产乱| 久久国产精品久久国产精品| 亚洲经典视频在线观看| 亚洲精品一线二线三线无人区| 亚洲狼人综合| 在线观看欧美黄色| 伊人狠狠色j香婷婷综合| 国产一区亚洲一区| 亚洲精品久久久久久久久久久久| 国产老女人精品毛片久久| 影音先锋另类| 国产在线麻豆精品观看| 一区二区三区欧美在线观看| 在线观看欧美日韩国产| 欧美日韩国产色站一区二区三区| 国语自产精品视频在线看抢先版结局| 欧美在线观看天堂一区二区三区| 日韩午夜视频在线观看| 宅男66日本亚洲欧美视频| 亚洲视频综合| 亚洲第一成人在线| 久久一区二区三区av| 久久综合网络一区二区| 欧美成人精品一区二区三区| 亚洲免费观看高清完整版在线观看熊| 国产精品女主播在线观看| 欧美视频在线观看免费| 亚洲国产高清在线观看视频| 亚洲欧美在线x视频| 欧美午夜片在线免费观看| aⅴ色国产欧美| 欧美理论视频| 亚洲欧洲日韩女同| 欧美日韩亚洲天堂| 国产欧美一区二区三区视频| 国产一区二区精品久久91| 亚洲一区影音先锋| 欧美顶级大胆免费视频| 亚洲区欧美区| 亚洲视频网在线直播| 中文一区二区| 久久免费视频在线| 国产精品美女久久久久av超清| 国产精品狼人久久影院观看方式| 亚洲第一视频网站| 欧美视频中文字幕| 国产欧美日韩在线视频| 久久裸体艺术| 国产精品乱码久久久久久| 久久久精品一品道一区| 国产精品欧美日韩一区二区| 亚洲天堂第二页| 欧美亚洲自偷自偷| 亚洲高清一区二区三区| 欧美精品日韩一本| 欧美日韩国产免费观看| 国内在线观看一区二区三区| 久久视频国产精品免费视频在线| 久久久欧美一区二区| av成人激情| 老司机免费视频久久| 国产精品露脸自拍| 亚洲精品视频在线观看免费| 欧美日韩另类国产亚洲欧美一级| 欧美主播一区二区三区美女 久久精品人| 香蕉尹人综合在线观看| 国产欧美精品日韩区二区麻豆天美| 国产亚洲综合性久久久影院| 亚洲综合999| 欧美在线视频一区| 久久久亚洲国产天美传媒修理工| 亚洲视频电影在线| 国产精品夜夜嗨| 欧美日本精品在线| 99re视频这里只有精品| 亚洲三级网站| 欧美三级韩国三级日本三斤| 亚洲另类黄色| 美国十次了思思久久精品导航| 亚洲精品一区二区三区婷婷月| 国产视频亚洲| 久久青青草原一区二区| 国内精品伊人久久久久av一坑| 国产精品青草久久| 在线观看国产一区二区| 在线亚洲欧美视频| 精品51国产黑色丝袜高跟鞋| 国产一区二区欧美日韩| 国产一区二区三区视频在线观看| 久久久精品国产一区二区三区| 99精品国产在热久久| 欧美一区二区在线视频| 亚洲激情精品| 玖玖玖免费嫩草在线影院一区| 在线观看一区| 日韩一区二区精品在线观看| 国产精品极品美女粉嫩高清在线| 欧美专区第一页| 国产视频在线观看一区| 欧美1区视频| 国产一区二区三区自拍| 在线观看福利一区| 国产精品海角社区在线观看| 欧美日韩在线综合| 国产欧美一区二区精品秋霞影院| 亚洲毛片在线| 欧美日韩一区二区三区在线| 欧美精品手机在线| 能在线观看的日韩av| 国产在线精品成人一区二区三区| 久久精品亚洲乱码伦伦中文| 欧美刺激午夜性久久久久久久| 亚洲高清久久| 激情久久久久| 国产精品系列在线播放| 亚洲激情在线| 伊人夜夜躁av伊人久久| 国产精品最新自拍| 欧美激情一区二区久久久| 亚洲精品一区在线观看香蕉| 亚洲成色999久久网站| 欧美日韩一区二区在线观看视频| 国产精品久久二区| 欧美jizzhd精品欧美喷水| 久久久99精品免费观看不卡| 伊人久久久大香线蕉综合直播| 在线观看亚洲视频| 黄色在线成人| 国产精品日韩欧美大师| 欧美一区二区网站| 久久蜜桃香蕉精品一区二区三区| 久久久高清一区二区三区| 免费的成人av| 欧美另类女人| 国产午夜久久| 欧美日韩成人网| 亚洲性人人天天夜夜摸| 性色av一区二区三区在线观看| 亚洲欧美另类在线观看| 国产午夜久久久久| 国产亚洲制服色| 欧美波霸影院| 国产精品欧美日韩|