STM32 输入捕获的脉冲宽度及频率计算

2023-11-08

输入捕获模式可以用来测量脉冲宽度或者测量频率。STM32 的定时器,除了 TIM6 和 TIM7,其他定时器都有输入捕获功能。以下是对脉冲宽度及频率的计算。

1、脉冲宽度

如下图所示,采集该高电平脉冲的宽度,只需要进入输入捕获上升沿检测,记录当前的发生上升沿时的CNT值,再进行输入捕获下降沿检测,也记录当前发生下降沿时的CNT值,两次CNT值的差值再根据计数的频率就可以算出脉冲的宽度。
1100486-20170223174952007-2022831357.png
上升沿及下降沿捕获的程序具体实现如下:

TIM8_Cap_Init(0XFFFF,72-1);                                          //以1Mhz的频率计数 

void TIM8_UP_IRQHandler(void)
{ 
    if((TIM8CH4_CAPTURE_STA&0X80)==0)                            //还未成功捕获   
    {     
        if (TIM_GetITStatus(TIM8,TIM_IT_Update) != RESET)
        {       
            if(TIM8CH4_CAPTURE_STA&0X40)                 //已经捕获到高电平了
            {
                if((TIM8CH4_CAPTURE_STA&0X3F)==0X3F) //高电平太长了
                {
                    TIM8CH4_CAPTURE_STA|=0X80;   //标记成功捕获了一次
                    TIM8CH4_CAPTURE_VAL=0XFFFF;
                }
                else 
                    TIM8CH4_CAPTURE_STA++;       //捕获高电平后定时器溢出的次数++
            }    
        }
                           
    }
    TIM_ClearITPendingBit(TIM8,T
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

STM32 输入捕获的脉冲宽度及频率计算 的相关文章

  • 神州交换机DHCPv6配置

    SWA配置 CS6200 28X EI gt ena CS6200 28X EI conf CS6200 28X EI config host SWA SWA config ipv6 enable SWA config service dh

随机推荐

  • 人脸识别研究

    转载自 https www jianshu com p 639e3f8b7253 本篇文章十分的长 大概有2万7千字左右 一 发展史 1 人脸识别的理解 人脸识别 Face Recognition 是一种依据人的面部特征 如统计或几何特征等
  • Docker与DevOps的无敌组合,引爆你的创新潜能

    荣誉认证 51CTO博客专家博主 TOP红人 明日之星 阿里云开发者社区专家博主 技术博主 星级博主 微信公众号 iOS开发上架 本文由iOS开发上架原创 欢迎关注 点赞 收藏 留言 首发时间 2023年8月7日 坚持和努力一定能换来诗与远
  • 如何批量修改照片后缀名

    有的时候我们写博客 或者干一些别的事情 需要大量的图片资源 于是我们会花费一些时间去zhaotup 把找到的图片都存在文件夹里面 但是 我们找到的图片所对应的格式可能不是我们所想要的格式 但是 我们可能下载了很多图片 不可能一个一个的去修改
  • 我个人认为.NET总有开源的一天

    我已经从事 Net平台的开源工作9年有余 最近跟朋友的聊天让我不禁回望 Net开源的这9年 记得2004年的 Net 1 1在当时是个热门 开源被认为是对微软的巨大威胁 Steve Balmer 也极力反对任何出现的开源 那时候对 NET平
  • elasticsearch常用命令操作集合

    文章目录 1 请求命令格式 2 关闭服务 3 添加员工信息 4 检索单个员工信息 5 检索所有员工信息 6 简单查询查询last name为Smith的员工信息 全匹配 7 DSL语句查询 查询last name为Smith的员工信息 全匹
  • thinkphp3错误:syntax error, unexpected 'list' (T_LIST), expecting identifier (T_STRING)

    syntax error unexpected list T LIST expecting identifier T STRING 出现这个错误的原因是 list是php的一个函数 系统冲突了 改成别的名字就可以了
  • java 操作excel (maven)

    资料地址 http www teamdev com downloads jexcel docs JExcel PGuide html 1 pom xml文件添加
  • 构造方法、类的初始化块以及类字段的初始化顺序

    构造方法 首先 以下代码为何无法通过编译 哪儿出错了 public class Test public static void main String args Foo obj1 new Foo class Foo int value pu
  • 如何写出高质量代码——站在巨人的肩膀上

    如何写出高质量代码 站在巨人的肩膀上 高质量代码的三要素 可读性 可维护性 可变更性 可读性强 可维护性 适应软件在部署和使用中的各种情况 1 3 可变更性 因需求变化而对代码进行修改 牛顿曾经说过 如果说我看得比别人更远 那是因为我站在巨
  • 遍历Newtonsoft.Json.Linq.JObject

    JObject 遍历 引用命名空间 using Newtonsoft Json Linq JObject jObject JObject Parse ID 001 Mark Hello Word StringBuilder str new
  • C++进阶:Makefile基础用法

    文章目录 1 Makefile基本语法与执行 2 Makefile简化过程 3 Makefile生成并使用库 3 1 动态库的建立与使用 3 2 动态加载库的建立与使用 1 Makefile基本语法与执行 作用 Makefile 文件告诉
  • 光纤收发器A,B端含义解释

    最近有朋友问到 光纤收发器型号或者收发器模块上A B字母的含义是什么 今天飞畅科技的小编就来为大家介绍一下 收发器中A B端字母的真正含义 一起来看看吧 首先 光纤收发器按光纤芯数分类有2种 一种是单模双纤光纤收发器 一种是单模单纤光纤收发
  • (二叉树)二叉树的序列化与反序列化

    题目描述 序列化是将一个数据结构或者对象转换为连续的比特位的操作 进而可以将转换后的数据存储在一个文件或者内存中 同时也可以通过网络传输到另一个计算机环境 采取相反方式重构得到原数据 请设计一个算法来实现二叉树的序列化与反序列化 这里不限定
  • Highway network

    Highway Network主要解决的问题是 网络深度加深 梯度信息回流受阻造成网络训练困难的问题 假设定义一个非线性变换为 定义门函数 携带函数 对于门函数取极端的情况0 1会有 而对应的门函数使用sigmoid函数 则极端的情况不会出
  • Java接口详解

    一 static静态关键字 定义变量不加static关键字 每个对象单独保存一个变量 定义变量加static关键字 静态变量 类变量 共享变量 public static 数据类型 变量名 所有对象会共享该变量 如果一个变量 静态变量 类变
  • C++友元函数

    友元 让函数或者类作为另外一个类的朋友 则可以访问当前类的private或者protected 友元friend机制允许一个类授权其他的函数访问它的非公有成员 友元声明以关键字friend开头 它只能出现在类的声明中 它们不受其在类体中的p
  • node.js系统学习2

    1 最基础的东西 也很实用 用于工作 本地搭建一个简单的服务 实际工作中 有很多时候可能你自己需要一个简单的静态服务 但是你发现你的同事全都有 你没有 人家看一个那个产品原型直接用静态服务看 人家看一个文件直接用静态服务看 而你就很lowb
  • docker 简单运用,使用阿里镜像

    第一步 确定docker已经安装 第二步 去阿里上搜索镜像 找到你想要的镜像 然后点击详细中有命行 如下 注意后面加版本号 如 V1 0 docker pull registry cn hangzhou aliyuncs com kenny
  • 【JavaEE】线程安全

    文章目录 1 前言 2 线程安全的概念 3 造成线程不安全的原因 4 如何解决出现的线程不安全问题 4 1 如何使用 synchronized 加锁 4 2 解决上面自增问题导致的线程安全问题 5 synchronized 的特性 5 1
  • STM32 输入捕获的脉冲宽度及频率计算

    输入捕获模式可以用来测量脉冲宽度或者测量频率 STM32 的定时器 除了 TIM6 和 TIM7 其他定时器都有输入捕获功能 以下是对脉冲宽度及频率的计算 1 脉冲宽度 如下图所示 采集该高电平脉冲的宽度 只需要进入输入捕获上升沿检测 记录