请选择 进入手机版 | 继续访问电脑版

你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

求助佬们,STM32U083 进行外部计数只能计数8000多一点

[复制链接]
星海灿烂 提问时间:2024-11-18 15:10 / 已解决

背景:

使用LPTIME1进行计数。

LPTIMER配置如下:

image.png

时钟配置如下:

使用过LSE;PCLK配置,计数还是一样的

image.png

实际计数只能计数到8000多;使用信号发生器产生9KHz脉冲,计数就变成几十个了。

清除count的值是通过同步清除的

请问大佬们,有遇到这样的问题吗?

收藏 评论7 发布时间:2024-11-18 15:10

举报

7个回答
butterflyspring 最优答案 回答时间:2024-11-19 14:47:44
将信号发生器的脉冲频率调低到8K 或以下,计数是不是正常了。


如果是的话,很可能是定时器的内部时钟速率低了,可以换一个高速时钟验证一下。
xmshao 回答时间:2024-11-18 18:00:01
不知你这个计数个数是通过什么方式来统计或体现的,只能记到8000多一点,你说计数器的值记到这里就停下来了吗?


其实,停下来也不正常的,只要计数脉冲不停地提供。
星海灿烂 回答时间:2024-11-19 09:12:32

xmshao 发表于 2024-11-18 18:00
不知你这个计数个数是通过什么方式来统计或体现的,只能记到8000多一点,你说计数器的值记到这里就停下来了 ...

通过LPTIMER1_IN1引脚计数,不是停下来,应该说是溢出了

xmshao 回答时间:2024-11-19 12:04:22

星海灿烂 发表于 2024-11-19 09:12
通过LPTIMER1_IN1引脚计数,不是停下来,应该说是溢出了

如果说溢出了,你确认下你的ARR配置,可以通过调试界面查看。

星海灿烂 回答时间:2024-11-19 13:32:10

xmshao 发表于 2024-11-19 12:04
如果说溢出了,你确认下你的ARR配置,可以通过调试界面查看。

配置的ARR是65535,后面发现是概率性的,只能计数到8500多,其他可以计数到35K

星海灿烂 回答时间:2024-11-19 16:11:19

butterflyspring 发表于 2024-11-19 14:47
将信号发生器的脉冲频率调低到8K 或以下,计数是不是正常了。</p>
<p>

把信号发生器频率低于8000;计数是正常的。我开始也怀疑时钟问题,我修改为内部16M时钟后,确实计数提高了,可以到40K。我后续再验证一下,多谢大佬

xmshao 回答时间:2024-11-19 17:58:23

星海灿烂 发表于 2024-11-19 13:32
配置的ARR是65535,后面发现是概率性的,只能计数到8500多,其他可以计数到35K
...

如果说你的LPTIM本身的时钟很低,比方32768,对于太高的频率肯定没法正常计数。

不过,LPTIM时钟也是可选的,也可以跑到系统时钟那么高。如果外部输入高,就把LPTIM本身

工作时钟调高。

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32Cube扩展软件包
意法半导体边缘AI套件
ST - 理想汽车豪华SUV案例
ST意法半导体智能家居案例
STM32 ARM Cortex 32位微控制器
关注我们
st-img 微信公众号
st-img 手机版