OpenEdv-开源电子网

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

求助F4产生40k方波进行超声波测距的程序

[复制链接]

1

主题

4

帖子

0

精华

新手上路

积分
21
金钱
21
注册时间
2021-11-24
在线时间
5 小时
发表于 2021-11-24 09:01:44 | 显示全部楼层 |阅读模式
1金钱
附原理图

超声波测距.jpg

超声波传感器模块.pdf

97 KB, 下载次数: 10

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

12

主题

3344

帖子

1

精华

论坛元老

Rank: 8Rank: 8

积分
8464
金钱
8464
注册时间
2020-5-11
在线时间
3904 小时
发表于 2021-11-24 09:40:24 | 显示全部楼层
你这问题较基础,建议先学会控制IO口输出高、低电平,写一个软件延时函数,让IO口延时一段时间置高、延时一段时间置低;
然后再看一下手册中关于定时器的介绍,学着输出PWM。
专治疑难杂症
回复

使用道具 举报

11

主题

2131

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
4729
金钱
4729
注册时间
2015-1-10
在线时间
591 小时
发表于 2021-11-24 09:46:43 | 显示全部楼层
直接PWM 40KHz,原子例程改改就出来了
回复

使用道具 举报

1

主题

4

帖子

0

精华

新手上路

积分
21
金钱
21
注册时间
2021-11-24
在线时间
5 小时
 楼主| 发表于 2021-11-24 09:56:33 | 显示全部楼层
本帖最后由 su2021 于 2021-11-24 09:58 编辑

我的程序已经实现了PWM输出 40K方波,测得的距离不对,偏大
回复

使用道具 举报

12

主题

3344

帖子

1

精华

论坛元老

Rank: 8Rank: 8

积分
8464
金钱
8464
注册时间
2020-5-11
在线时间
3904 小时
发表于 2021-11-24 10:16:38 | 显示全部楼层
本帖最后由 LcwSwust 于 2021-11-24 10:18 编辑

每层楼左下方有个“回复”,要点击那个“回复”别人才能收到通知。
原来只是距离不对啊,还以为你是不会产生方波。
“不对”是啥表现呢?
比如,实际值1米,测量值是多少?实际值2米,测量值是多少?你得有数据啊,别光说不对。是否找过原因?比如用示波器看看模块输出的波形是不是正常的?是模块输出本就偏大还是定时器分频不对导致计数偏大?
专治疑难杂症
回复

使用道具 举报

1

主题

4

帖子

0

精华

新手上路

积分
21
金钱
21
注册时间
2021-11-24
在线时间
5 小时
 楼主| 发表于 2021-11-24 15:23:14 | 显示全部楼层
LcwSwust 发表于 2021-11-24 10:16
每层楼左下方有个“回复”,要点击那个“回复”别人才能收到通知。
原来只是距离不对啊,还以为你是不会产 ...

先谢谢大侠了,新手刚到论坛,不熟悉。
我有两个硬件电路,一个是用7555产生40K方波测距的,工作就正常,另外一个硬件电路是我附件的电路,现在是用正点原子F4的PWM可以产生40k的方波(用示波器测试过),20MM的距离,测得的数据是570mm左右
回复

使用道具 举报

12

主题

3344

帖子

1

精华

论坛元老

Rank: 8Rank: 8

积分
8464
金钱
8464
注册时间
2020-5-11
在线时间
3904 小时
发表于 2021-11-24 15:41:07 | 显示全部楼层
本帖最后由 LcwSwust 于 2021-11-24 15:42 编辑
su2021 发表于 2021-11-24 15:23
先谢谢大侠了,新手刚到论坛,不熟悉。
我有两个硬件电路,一个是用7555产生40K方波测距的,工作就正常 ...

哦,那可能就是电路的原因了,比如解调电路有延迟。
多测几组数据,看是否线性。
如将真实值定义为X,测量值定义为Y,看关系是否满足:
Y=KX+B;
多测几组数据,计算K与B看是多少。
也可以用excel填入数据绘制曲线,看是不是直线。
专治疑难杂症
回复

使用道具 举报

1

主题

4

帖子

0

精华

新手上路

积分
21
金钱
21
注册时间
2021-11-24
在线时间
5 小时
 楼主| 发表于 2021-11-24 18:51:07 | 显示全部楼层
LcwSwust 发表于 2021-11-24 15:41
哦,那可能就是电路的原因了,比如解调电路有延迟。
多测几组数据,看是否线性。
如将真实值定义为X, ...

感谢大侠耐心指导
我会继续努力的......
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-2-26 15:16

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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