历史上的今天
今天是:2025年03月04日(星期二)
2021年03月04日 | STM32F0xx_TIM输入捕获(计算频率) 配置详细过程
2021-03-04 来源:eefocus
关于STM32的定时器,可谓是功能强大,估计没有多少人研究完STM32定时器的所有功能(包括我也没有),只是使用常用的一些功能,后续我会推出关于STM32定时器的更多功能。
STM32芯片多数为16位计数,但基本上都有1个或两个32位的定时器,可惜的是我们最常使用的F1系列芯片中没有32位的定时器,F030中也没有,具体请看数据手册。
今天主要总结关于STM32F0系列输入捕获,捕获信号频率,即所谓逻辑分析仪检测数字频率的功能。
今天使用32位的TIM2作为捕获的定时器,为什么是32位,原因很简单,就是为了捕获(采集)更宽频率的波形,今天提供的工程可以采集0Hz - 10MHz的波形(建议2MHz一下,串口打印需要时间)。而16位就不行,提醒使用F1的朋友要注意这一点。官方提供的例程也是16位,检测的范围同样有限。
下载
ST标准外设库和参考手册、数据手册等都可以在ST官网下载,你也可以到我的360云盘下载。关于F0系列芯片的参考手册有多个版本(针对F0不同芯片),但有一个通用版本,就是“STM32F0x128参考手册V8(英文)2015-07”建议参考该手册,以后如果你换用一种型号芯片也方便了解。
今天的软件工程下载地址(360云盘):
https://yunpan.cn/cSztEbetLczKY访问密码 06d0
STM32F0xx的资料可以在我360云盘下载:
https://yunpan.cn/cS2PVuHn6X2Bj访问密码 8c37
今天工程测试效果(视频):
https://yunpan.cn/cSziVGGZbMagj访问密码 5731
准备工作
今天总结的软件工程是基于“TIM基本延时配置详细过程”修改而来,因此需要将该软件工程下载准备好。今天将源代码添加在timer.c文件里面,就不需要新建文件了。
捕获原理
看系统框图,今天使用分频的方式来采集波形,官方提供的例程是没有配置TimeBase参数,也没有分频,分频的好处在于不是非常实时的获取波形,这样有利于提供精度(可以说是计算平均值)。捕获外部8个脉冲,前后读取一下计数的值,这个值就是外部脉冲的差值,从而计算出频率。

配置过程详情
①RCC时钟

该函数位于bsp.c文件下面;
我个人习惯第一步配置时钟,ST官方提供的例程也是把配置时钟放在前面。关于RCC时钟的配置比较重要,有好几次我就是由于忘记配置相应RCC时钟,让我找了很久的问题,最后才发现是RCC时钟没有配置。
注意:
外设时钟不要随便添加,比如:RCC_APB1外设不要配置在RCC_APB2时钟里面【如:RCC_APB2PeriphClockCmd(RCC_AHBPeriph_DMA1, ENABLE);这样能编译过,但是错误的】
我每次都提醒RCC时钟,是因为很多人就是因为时钟而导致软件运行有问题,所以,提醒更多人要注意配置RCC.
②捕获引脚配置

该函数位于timer.c文件下面;
重点注意:
引脚配置要和对应通道匹配才行(请看数据手册中的引脚说明)。
复用功能同样也是需要配置。
③TIM捕获配置

该函数位于timer.c文件下面;
这里的分频值配置为一样,方便计算。
④捕获频率的计算

该函数位于stm32f0xx_it.c文件下面;
这个函数就是捕获中断函数,采集8个脉冲的前后中断一次,即读取一下计数值,通过计数值的差就可以算出频率了。
说明
STM32F0的芯片软件兼容性很好,可以适用于F0其他很多型号的芯片(具体请看手册、或者亲自测试)。
今天的工程是基于工程“STM32F0xx_TIM基本延时配置详细过程”修改而来,以上实例总结仅供参考,若有不对之处,敬请谅解。
史海拾趣
|
国内用得较多的是xilinx, altera和lattice的片子。 xilinx的产品系列较多,还算好使,但开发环境稍显复杂。 XILINX的东东内部是用三态连线的,虽然实现总线容易,但延迟特性不太好。 altera的开发环境我感觉最为简洁,但片子 ...… 查看全部问答> |
|
首先申明这绝不是歧视。 而是看到zqzq501311的回贴说自己家在农村,而且坚决不啃老,很感动。也希望自己的帖子能够帮到那些同样家在农村的。 面试前要明白自己的优势和劣势所在。 ...… 查看全部问答> |
|
现在家庭有很多都装了报警系统了的,但有好多都说不太好用。我一个亲戚家去年也是,装了报警系统了,但还是被小偷光顾了,可气的是小偷居然把一个报警器都给偷走了,后来去找商家,他说这不是他的问题。他还告诉说现在有小偷能自制一种反报警器材, ...… 查看全部问答> |
|
请教硬件专家:配合P4 CPU(2.4G)的最高档主板是什么型号,其所用的内存条是什么型号,内存最多能扩充到多少G 请教硬件专家:配合P4 CPU(2.4G)的最高档主板是什么型号,其所用的内存条是什么型号,内存最多能扩充到多少G … 查看全部问答> |
|
电机连着主轴,主轴带个增量式旋转编码器,已知编码器为1600线,主轴直径为150mm, 主轴为变速转动。 求1、主轴的当前时刻转速是多少?2、编码器一个脉冲所对应的长度是多少?3、当长度为2000mm时,编码器输出多少个脉冲? 如果所列的已知条件不充分 ...… 查看全部问答> |
|
本帖最后由 jameswangsynnex 于 2015-3-3 20:00 编辑 手机屏幕作为手机组成中重要的一部分,其显示效果会直接影响到整机的体验。目前关于屏幕的概念名词非常多,让人难以区分。比如:IPS、 Retina、ASV等,很多人会认为它们代表屏幕的材质,其实不 ...… 查看全部问答> |
|
有25年的工作经验的TI 电源工程师讲WEBENCH 设计工具(中文) 有25年的工作经验的TI 电源工程师讲WEBENCH 设计工具(中文) 数秒间向您展示数十亿个完整的电源供应器设计选择,这个视频将指导您如何迅速地修改设计参数,并实时审视该DC-DC电源供应器设计的性能变化,以便从系统物料成本、方案大小及效率间获得 ...… 查看全部问答> |
|
学习电路保护基础,可以对以后进行电子设计时对电路做一些电路保护设计,防止重要设备的损坏,是比较实用的一门课程。通过对这门课程,学习到电路保护的内容非常多,保护浪涌控制、带热电插拔、电流限制、电子电路断路保护、软启动等。这些保护中每 ...… 查看全部问答> |




