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 + -
显示快捷键?