4.1.1 算术平均值滤波.txt
来自「包含中值滤波,一阶滞后滤波,算术平均值滤波,PID滤波等单片机源代码.」· 文本 代码 · 共 34 行
TXT
34 行
平均值滤波程序代码如下:
void interrupt
AD(void)
{
WREG_temp=WREG; //现场保护
STATUS_temp=STAUTS;
ADIF=0; //清除中断标志
AD_total+=ADRESH;
if(++count>=4) //AD转换次数超过4次?
{
count=0; //是,输出滤波结果
AD_result=AD_total/4; //存放在AD_result中
AD_total=0;
}
WREG=WREG_temp;
STATUS=STAUTS_temp; //还原现场
}
AD转换的主程序:
void main(void)
{
ADCON0=0x01; //初始化ADCON0寄存器
TRISA=0xFF; //A口设置成模拟输入
ADCON1=0xFF; //初始化ADCON1寄存器
ADIE=1; //开AD中断
ADIF=0;
GIE=1; //开总部中断
PEIE=1; //开外部中断
count=0; //清零计数器,在主函数外部声明的全局变量
GO=1; //开AD
while(1);
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?