10種AD取樣的軟體濾波方法

2021-06-22 23:51:10 字數 937 閱讀 9677

假定從8位ad中讀取資料(如果是更高位的ad可定義資料型別為int),子程式為get_ad();  

1、限副濾波

/* a值可根據實際情況調整

value為有效值,new_value為當前取樣值

濾波程式返回有效的實際值 */

#define a 10

char value;

char filter()

2、中位值濾波法

/* n值可根據實際情況調整

排序採用冒泡法*/

#define n 11

char filter()

} }

return value_buf[(n-1)/2];

}

3、算術平均濾波法

/* */

#define n 12

char filter()

} }

for(count=1;count=n) return new_value;

delay();

new_value = get_ad();

} return value;

}

10、限幅消抖濾波法

/* */

略 參考子程式1、9

11、iir濾波例子

int bandpassfilter4(int inputad4)

delayinput[3]=inputad4;

delayoutput[3]=returnvalue;

// if (returnvalue<0)

//

return returnvalue;

}

10種軟體濾波方法

1 限幅濾波法 又稱程式判斷濾波法 a 方法 根據經驗判斷,確定兩次取樣允許的最大偏差值 設為a 每次檢測到新值時判斷 如果本次值與上次值之差 a,則本次值有效 如果本次值與上次值之差 a,則本次值無效,放棄本次值,用上次值代替本次值 b 優點 能有效克服因偶然因素引起的脈衝干擾 c 缺點 無法抑制...

10種軟體濾波方法

10種軟體濾波方法 來自網路 未驗證 1 限幅濾波法 又稱程式判斷濾波法 a 方法 根據經驗判斷,確定兩次取樣允許的最大偏差值 設為a 每次檢測到新值時判斷 如果本次值與上次值之差 a,則本次值有效 如果本次值與上次值之差 a,則本次值無效,放棄本次值,用上次值代替本次值 b 優點 能有效克服因偶然...

10種軟體濾波演算法

軟體濾波在嵌入式的資料採集和處理中有著很重要的作用,這10種方法各有優劣,根據自己的需要選擇。同時提供了c語言的參考 希望對各位能有幫助。1 限幅濾波法 又稱程式判斷濾波法 a 方法 根據經驗判斷,確定兩次取樣允許的最大偏差值 設為a 每次檢測到新值時判斷 如果本次值與上次值之差 a,則本次值有效 ...