stm32 单片机定时器捕获功能测量40-65Hz内的方波信号, 如何滤除上升沿上出现的干扰脉冲

在使用 STM32 定时器捕获功能测量 40-65Hz 方波信号时,如果上升沿出现干扰脉冲,可以通过 硬件定时器捕获功能结合软件滤波 有效地滤除干扰脉冲。以下是具体方法。


1. 问题分析

  1. 目标信号特性

  2. 干扰脉冲特性

    • 干扰脉冲的时间间隔通常非常短(如几微秒到几毫秒)。
    • 因此,干扰脉冲对应的捕获值会显著低于有效信号的下限值。
  3. 解决核心

    • 检测捕获值的时间间隔,如果小于设定的下限值(例如 15,000 对应 15ms),认为是干扰脉冲,直接丢弃。

2. 方法实现

以下是具体的软件和硬件相结合的滤波方案:

2.1 利用捕获值范围进行滤波

在捕获中断中判断两次捕获的时间间隔是否在设定的有效范围内,超出范围的捕获值直接丢弃。

代码实现:
#include "stm32f4xx.h"

// 定义捕获值范围(单位:定时器计数)
#define MIN_VALID_PERIOD 15380  // 4
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值