stm32-HY-SRF05 超声波模块-原理及代码解读

这篇具有很好参考价值的文章主要介绍了stm32-HY-SRF05 超声波模块-原理及代码解读。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

一、基础知识

1.功能:超声波测距

2.硬件介绍及电路连接

二、底层代码原理分析

1基本工作原理

2代码分析

1时序图

步骤1

步骤2


一、基础知识

1.功能:超声波测距

      HY-SRF05 超声波测距模块可提供2cm-450cm 的非接触式距离感测功能,测距精度可达高到3mm

2.硬件介绍及电路连接

        

 stm32-HY-SRF05 超声波模块-原理及代码解读

stm32-HY-SRF05 超声波模块-原理及代码解读

VCC 供5V 电源,
GND 为地线,
TRIG 触发控制,信号输入,
ECHO 回响信号输出
OUT 开关量输出(当报警模块使用)

注:

1、此模块不宜带电连接,若要带电连接,则先让模块的GND 端先连接,否则会影响
模块的正常工作。
2、测距时,被测物体的面积不少于0.5 平方米且平面尽量要求平整,否则影响测量的
结果

二、底层代码原理分析

1基本工作原理

(1)采用IO 口TRIG 触发测距,给至少10us 的高电平信号;
(2)模块自动发送8 个40khz 的方波,自动检测是否有信号返回;
(3)有信号返回,通过IO 口ECHO 输出一个高电平,高电平持续的时间就是超声
波从发射到返回的时间。

测试距离=(高电平时间*声速(340M/S))/2;

2代码分析

1时序图

stm32-HY-SRF05 超声波模块-原理及代码解读

步骤1

以上时序图表明你只需要提供一个10uS 以上脉冲触发信号

所以我们得到第一段代码

void Wave_SRD_Strat(void)
{
	GPIO_SetBits(GPIOB,Trig);   //将Trig设置为高电平
	delay_us(20);               //持续大于10us触发,触发超声波模块工作
	GPIO_ResetBits(GPIOB,Trig); 
	
}

步骤2

 该模块内部将 发出8 个40kHz 周期电平并 检测回波。一旦检测到有回波 信号则输出 回响信号
回响信号 的脉冲宽度与所 测的距离成正比。由此通过 发射信号到收到的回响信号时间间隔可以计算得到距离。

我们需要检测回响信号。必然需要这句代码。

(GPIO_ReadInputDataBit(GPIOF,Echo)

最重要的是我们需要检测发送信号和接受到回响信号的时间:

我们自然而然的需要定时器为了优化代码我们加上中断。

利用上面的距离计算公式s于是我们得到下列代码文章来源地址https://www.toymoban.com/news/detail-434434.html

void EXTI9_5_IRQHandler(void)
{
	delay_us(10);
	
	
	if(EXTI_GetITStatus(EXTI_Line8)!=RESET)
	{
		TIM_SetCounter(TIM3,0);
		TIM_Cmd(TIM3,ENABLE);
		
		while(GPIO_ReadInputDataBit(GPIOF,Echo));  //等待低电平
		
		TIM_Cmd(TIM3,DISABLE);
		
		Distance=TIM_GetCounter(TIM3)*340/200.0;
		
		if(Distance>0)
		{
			printf("Distance:%f cm\r\n",Distance);
		}
			
		EXTI_ClearITPendingBit(EXTI_Line8);
}

到了这里,关于stm32-HY-SRF05 超声波模块-原理及代码解读的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • STM32传感器外设集--超声波模块(HC_SR04)

    目录 1.器件介绍 1.1.参数 1.2.测量范围 1.3.计算公式 1.4.优点 2.1.原理 3.代码编写 3.1.接线图 3.2.代码 3.2.1.HC_SR04.h 3.2.2.HC_SR04.c 3.2.3.timer.h 3.2.4.timer.c  3.2.5.main.c 5根引脚 工作电压5v 工作电流15mA 工作频率40Hz 最近距离 2cm 最远距离 4m 测量角度 15度 测试距离=(高电平时间*声速(340

    2024年02月14日
    浏览(39)
  • 基于STM32的HC_SR04模块实现超声波测距(附源码)

    本次实验需要通过STM32与HC_SR04模块实现实时测距,并将测距信息通过串口显示在电脑上 原理 超声波测距原理是在超声波发射装置发出超声波,它的根据是接收器接到超声波时的时间差,与雷达测距原理相似。 超声波发射器向某一方向发射超声波,在发射时刻的同时开始计时

    2024年02月11日
    浏览(46)
  • HC-SR04超声波测距模块使用方法和例程(STM32)

    基于STM32和HC-SR04模块实现超声波测距功能 最近在学STM32做个简单的应用实践一下,顺便水一篇文章。 本文用的单片机是STM32F103C8T6,超声波测距模块是HC-SR04,显示测距结果用的是0.96寸OLED屏模块。 下图中小于10cm时的显示结果有点问题,代码已修复并更新 修复后的结果: 视频

    2024年02月03日
    浏览(46)
  • 基于STM32的超声波HC-SR04和红外测距模块测量距离的实验对比(HAL库)

            前言: 本文主要是为了 日常普通场合 下测距做的 对比实验 ,本实验主要包含 2种模块 : 超声波测距模块 (HC-SR04)和 红外测距模块 (SHARP GP2Y0A21YK0F)。两种模块不管是测距原理和编程实验方式都是不相同的,其测距效果也存在很大差异。感兴趣的读者朋友,

    2023年04月27日
    浏览(63)
  • STM32超声波避障小车(舵机云台+超声波/stm32f103/HAL/Cube)

    一、小车1.0——基本蓝牙小车(仅蓝牙遥控小车运动方向,本篇) 二、小车2.0——蓝牙小车PLUS(可以蓝牙控制方向+蓝牙直接调节车速) 三、小车3.0——避障小车(超声波+舵机云台) 四、小车4.0——无线手柄方向感知操控小车(mpu6050+双蓝牙透传) 五、双轮自平衡小车(HAL库版

    2024年02月05日
    浏览(73)
  • STM32系列(HAL库)——F103C8T6通过HC-SR04超声波模块实现测距

    (1)编程平台:Keil5 (2)CubeMX (3)XCOM(串口调试助手) (1)某宝买的超声波模块   (2)F1的板子,本例使用经典F103C8T6 (3)ST-link 下载器 (4)USB-TTL模块 (5)杜邦线若干 (1)模块简介:         超声波是振动频率高于20kHz的机械波。它具有频率高、波长短、绕射现象小、方向性好、能够成为射

    2024年02月02日
    浏览(47)
  • 基于STM32的超声波测距

    一、HC-SR04模块介绍 HC-SR04超声波测距模块可提供2cm-400cm的非接触式距离感测功能,测距精度可高达3mm;模块包括超声波发射器、接收器、与控制电路。 模块的基本工作原理为: (1)采用 IO口 TRIG触发测距,给最少 10us的高电平信呈。 (2)模块自动发送 8个 40khz的方波,自动检测是

    2024年02月13日
    浏览(44)
  • STM32——超声波传感器

    需求: 使用超声波测距,当手离传感器距离小于 5cm 时, LED1 点亮,否则保持不亮状态   接线:     定时器配置: 使用 TIM2 ,只用作计数功能,不用作定时。 将 PSC 配置为 71 ,则计数 1 次代表 1us 。   编写微秒级函数: 1、总结 微秒级定时: 这个延迟函数的实现利用了定

    2024年02月05日
    浏览(43)
  • 基于STM32的超声波雷达

    视频地址:1.基于STM32的超声波雷达-演示_哔哩哔哩_bilibili 备注:文档最后有所有文件的网盘地址 全部必要硬件(左到右) : ST-LINK调试器:调试下载程序 stm32f103c8t6核心板 1.8寸TFT显示器 sg90舵机 超声波传感器 其他扩展硬件 超声波传感器转接板:方便超声波传感器接到舵机上

    2024年02月12日
    浏览(43)
  • stm32之14.超声波测距代码

           -------------------- 源码  

    2024年02月11日
    浏览(48)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包