
大家好 我在使用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,两种方法偏差还有差异。 示波器截图如下 代码如下:
|
stm32Cube Visual studio code 如何设置STM32H7的下载算法
STM32H755的TouchGFX不能选择M7内核
FW_H7 V1.12.1-HAL库DMA双缓冲配置
请教SPI用LL读取的问题
STM32H743 LAN8720 CUBEMX配置lwIP无法ping通,分配pbuf失败
请教下关于 stm32h7x5,7x7 系列双核 dsi ltdc 显示驱动的时钟频率配置 ?
STM32H750VBT6 + W5500 + 激光雷达点云
STM32H750XBH6的外置SDRAM相关问题
STM32H743vit6无法连接
X-CUBE-AZRTOS-H7
第一,注意统计溢出次数;第二,在一轮测试完成前在中断程序里尽量不要逗留太久以免丢失脉冲统计。这样有篇文章可以参考下:
基于定时基于定时器捕获测量脉宽的应用示例 ,它介绍了基于单个定时器通道和双通道PWM输入模式的测量方式。
刚提到的文章链接是 基于定时器捕获测量脉宽的应用示例 (qq.com)