C語言幾種軟體濾波方式

2021-08-26 10:07:43 字數 939 閱讀 7903

1.算數平均值濾波

void interrupt

ad(void)

wreg=wreg_temp;

status=stauts_temp; //還原現場

}ad轉換的主程式:

void main(void)

2.滑動平均值濾波

void interrupt

ad(void)

else

wreg=wreg_temp;

status=stauts_temp; //還原現場

}

3.防脈衝干擾平均值濾波

void interrupt

ad(void)

else if(ad_temp=8) //取樣次數是否達到8次?

wreg=wreg_temp;

status=stauts_temp; //還原現場

}

4.中值濾波

void interrupt

ad(void)

ad_result=adgot[2]; //把最中間的取樣結果作為最後ad轉換結果

//即5個數當中的第3個,從0到4的下標號為2

count=0; //計數器清零

}wreg=wreg_temp;

status=stauts_temp; //還原現場

}

5.一階滯後濾波

void interrupt

ad(void)

滑動平均濾波c語言 基本C語言濾波演算法

11種軟體濾波方法的示例程式 假定從8位ad中讀取資料 如果是更高位的ad可定義資料型別為int 子程式為get ad 1 限副濾波 a值可根據實際情況調整 value為有效值,new value為當前取樣值 濾波程式返回有效的實際值 define a 10 char value char filt...

C語言 結構體定義的幾種方式

c語言 結構體定義的幾種方式 若struct後面接的是名字,則其為該結構體的名稱。第一種是最基本的結構體定義,其定義了乙個結構體a。struct a 第一種 第二種則是在定義了乙個結構體b的同時定義了乙個結構體b的變數m。struct b 第二種 m 第三種結構體定義沒有給出該結構體的名稱,但是定義...

幾種簡單的C語言排序方式(2)

原理 取排序數的其中乙個元素 哨兵 從左右兩邊開始遍歷,左邊找到大於 或小於 哨兵元素的記錄,右邊找到小於 或大於 哨兵元素的記錄,將他倆進行交換。每次得到左邊全都小於 或大於 哨兵元素的序列,右邊得到全都大於 或小於 哨兵元素的序列,遞迴之後得到最後排序 void quick sort int a...