|
大家好 我在使用STM32H743做外部方波的频率计算。外部高速晶振25M,SYSCLK=400MHz, 使用了两种方法都有误差。 方法一,TIM5,200Mhz没有分频,捕获两次上升沿时间,运行后时间为23.74us(换算频率:42122Hz),实际示波器显示23.94us(41771Hz).不清楚这个误差 少200ns哪里产生的? 方法二,方法一基础上做计数,TIM3定义1s的溢出中断,每次中断读取上升沿的次数(TIM5中断中Frq_cnt计数),TIM3 200MHz时钟,Prescaler=20000-1,产生1s的溢出中断,运行后计数为41493Hz(换算单周期时间:24.1us),同上示波器是23.94us(41771),误差 多160ns,两种方法偏差还有差异。 示波器截图如下
代码如下: |
DMAMUX 使用内部外设Request Event(不使用TIM12和LPTIM)
STM32H743 以太网 为什么需要设置在0x30040000才能使用
STM32H743 的ADC线性校准问题
NUCLEO-H7S3L8开发板,操作板载FLASH出错,无法进入APP
H743 ulpi phy 引脚配置
STM32G431的电机驱动代码的FOC中断触发相关问题。
STM32H747XG下载一次仿真器就检测不到,运行不能正常
——STM32H747XG下载一次仿真器就检测不到,运行不能正常 原理图是否有问
STM32H7开发LWIP时遇到的问题
STM32H7 UART 使用、HAL 代码分析和实际遇到的问题
微信公众号
手机版
第一,注意统计溢出次数;第二,在一轮测试完成前在中断程序里尽量不要逗留太久以免丢失脉冲统计。这样有篇文章可以参考下:
基于定时基于定时器捕获测量脉宽的应用示例 ,它介绍了基于单个定时器通道和双通道PWM输入模式的测量方式。
刚提到的文章链接是 基于定时器捕获测量脉宽的应用示例 (qq.com)