历史上的今天
返回首页

历史上的今天

今天是:2025年03月30日(星期日)

正在发生

2020年03月30日 | 单片机ADC采样算法----限幅消抖滤波法

2020-03-30 来源:eefocus

限幅消抖滤波法相当于“限幅滤波法”+“消抖滤波法”    。   


下面直接看C代码的实现


#define A 200

#define N 20

//返回两个整数差

unsigned int num_sub( unsigned int a, unsigned int b )

{

    return ( a >= b ? ( a - b ) : ( b - a ) );

}

 

unsigned int filter10( void )

{

    unsigned int count = 0;

    unsigned int new_value = 0;

    static unsigned int last_value = 0;

    new_value = ReadVol_CH2();

    if( num_sub( new_value, last_value ) < A )

    {

        new_value = new_value;

    }

    else

    {

        new_value = last_value;

    }

    

    

    while( new_value !=  last_value)

    {

        count++;

        if( count >= N )

        {

            last_value = new_value;

            return new_value;

        }

        new_value = ReadVol_CH2();

        if( num_sub( new_value, last_value ) < A )

        {

            new_value = new_value;

        }

        else

        {

            new_value = last_value;

        }

    }

    return last_value;

}

 

 

 

void main( void )

{

    while( 1 )

    {

        val = ReadVol_CH2();        //读取AD采样值

        val1 =  filter10();

        printf( "A%drn", val );

        printf( "B%drn", val1 );

    }

}

主函数中实时采样AD端口的波形值,然后将采样值经过限幅消抖滤波法进行滤波,然后用串口输出原始采样值和滤波后的值,并在串口波形软件上显示采样的数据波形。

图中蓝色曲线为原始数据曲线,橙色曲线为经过滤波算法后的曲线。


限幅消抖滤波法继承了“限幅”和“消抖”的优点,改进了“消抖滤波法”中的某些缺陷,避免将干扰值导入系统。

推荐阅读

史海拾趣

ALLIED [Allied Electronics]公司的发展小趣事

Allied Electronics,总部位于美国德克萨斯州的一家分销公司,专注于为各种行业提供电子元件和电子产品。以下是关于Allied Electronics发展的五个相关故事:

  1. 成立和初期发展: Allied Electronics成立于1928年,最初以销售家庭无线电零件和配件为主要业务。随着无线电和电子行业的发展,公司逐渐扩大了产品范围,开始提供更广泛的电子元件和设备,以满足不断增长的市场需求。

  2. 与RS Components的合并: 2000年,Allied Electronics与英国的RS Components公司合并,成为全球领先的电子元件分销商之一。这一合并加强了两家公司在全球市场的地位,并且拓展了它们的产品线和客户群。

  3. 公司战略调整: 随着数字化技术的快速发展,Allied Electronics逐渐调整了业务战略,加大了对电子元件和器件的供应,并拓展了工业自动化、物联网和电子制造等领域的业务。通过与各种行业的合作伙伴建立紧密的关系,公司不断提升了产品质量和服务水平。

  4. 技术创新和数字化转型: Allied Electronics致力于技术创新和数字化转型,通过建立先进的电子商务平台和在线资源中心,为客户提供更便捷的采购体验。同时,公司还加强了与供应商的合作关系,引入了更多的创新产品,满足不同客户的需求。

  5. 持续发展和全球扩张: 作为全球领先的电子元件分销商之一,Allied Electronics不断加大在全球范围内的市场扩张力度,开设了多个销售办事处和物流中心,以更好地服务于全球客户。同时,公司还积极参与行业展会和活动,加强了与全球电子行业的合作与交流,推动了公司的持续发展和壮大。

BREL International Components公司的发展小趣事

面对日益激烈的国际竞争,BREL International Components公司开始实施全球化战略。公司首先在亚洲设立生产基地,利用当地的低成本优势提高生产效率。随后,BREL在欧洲和北美设立研发中心,吸纳全球顶尖的技术人才,推动技术创新和产品升级。通过全球化的战略布局,BREL不仅降低了生产成本,还拓宽了市场渠道,实现了业务的快速增长。

Analytic Instruments Corp公司的发展小趣事

Analytic Instruments Corp成立于XXXX年,最初由几位热衷于电子测量与分析技术的工程师创立。他们凭借对行业的深刻理解和敏锐的市场洞察力,研发出了一款具有创新性的电子测量仪器,该仪器在精度和稳定性上均优于市场上的同类产品。这一技术突破使得公司在创业初期就获得了市场的认可,为后续的发展奠定了坚实的基础。

Eastron Corp公司的发展小趣事

面对日益激烈的国际竞争,Eastron Corp决定走全球化发展的道路。公司先后在亚洲、欧洲和北美等地设立了研发中心和生产基地,通过本地化生产和研发,快速响应市场需求。同时,Eastron还积极寻求与国际知名企业的合作,共同开发新技术和产品,提升了公司的国际竞争力。

成都成电硅海公司的发展小趣事

在电子行业中,产品质量是企业生存和发展的关键。成都成电硅海公司深知这一点,因此在生产过程中严格把控每一个环节。公司引进了先进的生产设备和技术,建立了完善的质量检测体系。每一批产品出厂前都要经过严格的质量检测,确保产品性能的稳定和可靠。这种对品质的执着追求,使得成都成电硅海公司的产品在市场上赢得了良好的口碑。

Digilent公司的发展小趣事

DIALIGHT在工业LED照明领域取得了显著成就。公司专注于为工业应用设计集成系统,以减少安装和维护的复杂性,并确保产品在恶劣条件下持续稳定运行。此外,DIALIGHT的LED产品旨在提供优越的运行性能、可靠性和耐久性,帮助客户降低能源成本、维护成本和碳足迹,同时提高设施的安全性和生产力。

问答坊 | AI 解惑

想学ARM,推荐个板子

本人从事单片机开发,想往嵌入式发展下,哪位给推荐个开发板,有想卖的二手的也成…

查看全部问答>

AT89C51控制DC电机

AT89C51控制DC电机: 1.转速可调 2.包括ADC转换:ADC0808 3.汇编语言…

查看全部问答>

万能的坛啊,看看这个是什么做的?

KF750按键的蓝光是多个圈圈层叠,触摸的时候有“涟漪”的效果。今天有个客户想在一个产品上把原来的普通按键做成这个效果,触摸的好处理,但这个发光的材料好像是EL片。坛子里有知道的朋友吗?多谢! …

查看全部问答>

初学8051,征询如何选择购买板子

  我是一名初学8051者 最近看过很多关于8051的原理书 对单片机的基本原理略懂一二 想动手做些实验 一方面想加强自己对汇编指令或者说编程的熟悉程度 另一方面想对单片机有更彻底的了解 会些基本的应用  不知道怎么去选择购买板 ...…

查看全部问答>

鼠年最后一张帖

在eeworld又度过了一年,学到了不少的东西,谢谢帮助过我的朋友,也谢谢顶帖的朋友!…

查看全部问答>

FL2440的板子,修改12M的晶体为16.9344M后,无法启动???

请教高手们:     原FL2440的开发板,晶体为12MHz,修改为16.9344M后,无法启动,不知何因?     先说一下FL2440的bootloader的组成:     飞凌开发板提供的bootloader由uboot和eboot两部分组成,前面的uboot实现 ...…

查看全部问答>

关于编译mame的问题

我在编译mamece3的时候出现如下错误 LINK : fatal error LNK1104: cannot open file \'subsystem:windowsce,4.00\' 请问高手如何解决这个问题,谢谢…

查看全部问答>

关于CASIOdt-930m51e的问题

谁有这个型号的编译器呀?找不到帮助文档!…

查看全部问答>

盐雾对材料腐蚀研究

盐雾对材料腐蚀研究腐蚀是材料或其性能在环境的作用下引起的破坏或变质。大多数的腐蚀发生在大气环境中,大气中含有氧气、湿度、温度变化和污染物等腐蚀成分和腐蚀因素。盐雾腐蚀就是一种常见和最有破坏性的大气腐蚀。这里讲的盐雾是指氯化物的 ...…

查看全部问答>

MSP430f4152无法烧写程序的问题

用IAR给MSP430f4152烧写程序,总提示找不到单片机。仿真器用的UIF。 出错信息是: IarIdePm The debugging session could not be started。 Either the debugger initialization failed,or else the file \"F:\\Examination\\E-Meter\\Debug\\ ...…

查看全部问答>