OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 6750|回复: 7

修改了一个超声波测距的例程,定时器的一些配置和测距距离的计算有点看不懂,希望大佬解答一下,,,附图

[复制链接]

2

主题

7

帖子

0

精华

新手上路

积分
34
金钱
34
注册时间
2021-2-20
在线时间
10 小时
发表于 2021-3-21 13:39:45 | 显示全部楼层 |阅读模式
2金钱
时钟分频因子为什么是(360-1)?我设置成别的就测距就不准了。。。
另外距离=TIM_GetCounter(TIM2)*5*34/2000;这个5,2000都是从哪来的啊?不就是GetCounter(TIM2)*340m/s吗?换算不出来
2.png
1.png

最佳答案

查看完整内容[请看2#楼]

先说分频因子,prescaler是从0开始的,0就是不分频,即时钟/1,1就是二分频,即时钟/2,所以360分频是时钟/360,倒推过来就是360-1=359
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

11

主题

2147

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
4894
金钱
4894
注册时间
2015-1-10
在线时间
612 小时
发表于 2021-3-21 13:39:46 | 显示全部楼层
先说分频因子,prescaler是从0开始的,0就是不分频,即时钟/1,1就是二分频,即时钟/2,所以360分频是时钟/360,倒推过来就是360-1=359
回复

使用道具 举报

2

主题

7

帖子

0

精华

新手上路

积分
34
金钱
34
注册时间
2021-2-20
在线时间
10 小时
 楼主| 发表于 2021-3-21 13:41:27 | 显示全部楼层
距离除以2,再换算成厘米,也就是200,340那个0拿下来,就是2000,那个5????
回复

使用道具 举报

11

主题

2147

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
4894
金钱
4894
注册时间
2015-1-10
在线时间
612 小时
发表于 2021-3-22 10:52:23 | 显示全部楼层
再说这个2000,应该是1000*2,首先1000是单位换算,从ms到s,系统的时基是ms,你要换算成s的话是不是要除以1000,那个2是因为从发送到接收,声波其实走了两倍的距离,这个能理解吧
回复

使用道具 举报

2

主题

7

帖子

0

精华

新手上路

积分
34
金钱
34
注册时间
2021-2-20
在线时间
10 小时
 楼主| 发表于 2021-3-22 11:05:45 | 显示全部楼层
阿侑kevin 发表于 2021-3-22 10:52
再说这个2000,应该是1000*2,首先1000是单位换算,从ms到s,系统的时基是ms,你要换算成s的话是不是要除以 ...

理解理解,大佬,那个乘以5是什么情况啊?
另外我要是更改分频因子的话,我把代码烧进去,测距显示就不准确了
回复

使用道具 举报

0

主题

10

帖子

0

精华

初级会员

Rank: 2

积分
72
金钱
72
注册时间
2019-9-26
在线时间
19 小时
发表于 2021-3-29 21:56:11 | 显示全部楼层
MAZW 发表于 2021-3-22 11:05
理解理解,大佬,那个乘以5是什么情况啊?
另外我要是更改分频因子的话,我把代码烧进去,测距显示就不 ...

5的意思:360/72=5,这里预分频数之所以选择360,是因为360/72=5,也可以理解为定时器的时基为5us,或者说时钟的最小单位是5us,意思就是时钟计数器的每计一个数代表5us的时间,至于为什么取5us,这里可以计算一下,5us对应的距离为:5*340=1700um=1.7mm,1.7mm/2=0.85mm,相当于这里手动设置超声波的测量精度为0.85mm。但是实际能否达到这个精度还要取决于超声波返回的时间是否准确
回复

使用道具 举报

0

主题

4

帖子

0

精华

新手上路

积分
40
金钱
40
注册时间
2020-7-4
在线时间
13 小时
发表于 2021-5-8 19:26:34 | 显示全部楼层
大佬,能分享一下代码吗
回复

使用道具 举报

13

主题

644

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1999
金钱
1999
注册时间
2021-4-16
在线时间
510 小时
发表于 2021-5-9 11:23:14 | 显示全部楼层
汩汩 发表于 2021-5-8 19:26
大佬,能分享一下代码吗

可以参考这个看看
http://www.openedv.com/forum.php ... 4%C8%EB%B2%B6%BB%F1
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-5-24 11:19

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表