2021-10-10

超声波模块用的是什么型号,如何接收超声波模块传过来的数据?

  • 超声波模块采用的型号是 HC-SR04。
  • 步骤:
  • 首先stm32先向超声波模块发送启动信号(至少10us的高电平),超声波模块收到启动信号后会发送回8个40kgz的脉冲;
  • 之后,当超声波碰到障碍物后会反弹,超声波模块接收到返回的超声波(即接收到信号)后会发送高电平,stm32根据高电平的持续时间算出超声波经过的路径,将该距离除以2后就得到了障碍物的距离。
  • 测量高电平的持续时间采用的是定时器延时。该超声波模块的距离测量误差为 3mm,也就是测量精度为3mm。由于超声波传播的速度是340m/s,也就是 340 000 mm / 1 000 000us = 3mm / x us,可以算出来 x = 8.8, 即时间测量精度为8.8us,由于采用的是定时器延时来统计延长时间,定时器最小的延长时间为1us,为了减小测量误差,时间测量精度取 9us
    在这里插入图片描述

系统定时器是什么?你对系统定时器了解多少呢?系统定时器与普通的定时器有什么区别?

  • 系统定时器也叫做systick定时器,滴答定时器,内嵌在NVIC中,用于产生systick异常,即可以触发中断,功能是实现简单的延时
  • 系统定时器在Cortex M3/M4 内核中都存在,方便用户在使用不用类型的芯片的时候进行移植;在配置系统定时器时,需要选择时钟源,可选外部时钟源和内部时钟源;系统定时器要实现延时功能可采取两种方法:中断延时和非中断延时。在中断延时设置过程中,由于systick内嵌在NVIC中,所以不需要进行NVIC配置;在非中断延时设置过程中,直接配置系统定时器的相关寄存器的初始值、计数值等相关参数,然后在while循环里面等待systick计数完毕。
  • 系统定时器只能采用向下计数,普通定时器可采用向上或向下计数;系统定时器功能单一,只是实现简单的延时,而普通的定时器根据种类不同,可实现多种功能,如延时、输出比较、PWM生成等。
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值