4.1.2 滑动平均值滤波.txt

来自「包含中值滤波,一阶滞后滤波,算术平均值滤波,PID滤波等单片机源代码.」· 文本 代码 · 共 26 行

TXT
26
字号
void interrupt
AD(void)
{
 WREG_temp=WREG;           			//现场保护
 STATUS_temp=STAUTS;
 ADIF=0;                     			//清除中断标志
 if(AD_enable=1)               		//AD转换次数超过4次?
    {
     if(count>=8) count=0;
     AD_total+=ADgot[count++];		//是,输出滤波结果
     AD_result=AD_total/8;    		//存放在AD_result中
     if(count>=8) count=0;
     AD_total-=ADgot[count];  		//去掉最早AD结果
    }
 else
    {
     if(count>=7) AD_enable=1;		//最初的8次AD结果
     ADgot[count]=ADRESH;     		//保存AD转换结果
     AD_total+=ADgot[count++];  		//累加AD转换结果
     AD_result=AD_total/8;			//计算8次采样AD转换平均结果
     AD_total-=ADgot[0];        		//去掉最早AD转换结果
    }
 WREG=WREG_temp;
 STATUS=STAUTS_temp;        			//还原现场
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?