AI代码解释 //单次获取测量距离floatHCSR04_Get_Distant(void){HCSR04StartTrigStart();while(!HCSR_ECHO());HCSR04_TimerFunc(1);//start timerwhile(HCSR_ECHO());HCSR04_TimerFunc(0);//stop timerreturn(__HAL_TIM_GetCounter(&htim2))/58.0;}//均值滤波减小测量误差floatDistance(uint8_t cnt){...
HC-SR04模块包括一个超声波发射器和一个接收器。发射器向一个方向发射超声波,当超声波碰到障碍物后会反射回来,接收器接收反射波。通过计算发射到接收的时间差,结合声速,可以计算出距离。 三、硬件连接 HC-SR04与STM32的连接如下: VCC:连接到STM32的3.3V或5V电源。 GND:连接到STM32的地。 TRIG(触发):连接到ST...
#define _HC_SR04_H_ #include"stm32f1xx.h"#include"core_delay.h"typedef struct hc_sr04_device_st{GPIO_TypeDef*trig_port;uint16_t trig_pin;GPIO_TypeDef*echo_port;uint16_t echo_pin;TIM_HandleTypeDef*tim;//us级硬件定时器double distance;//测算距离}hc_sr04_device_t;/* us级延时函数 */#...
一、HC-SR04简单介绍 HC-SR04超声波模块常用于机器人避障、物体测距、液位检测、公共安防、停车场检测等场所。HC-SR04超声波模块主要是由两个通用的压电陶瓷超声传感器,并加外围信号处理电路构成的. 实物图: 接口定义: 新版的HC-SR04增加UART和IIC功能,但我是老版的的,只有GPIO模式。 GPIO模式: 外部单片机给模块T...
简介:本文主要介绍了超声波测距的原理,常用的超声波传感器。并且针对HC-SR04给出了使用思路和程序设计。最后,简单进行了思路拓展。 🎀文章作者:二土电子 🐸期待大家一起学习交流! 一、超声波测距基本原理 超声波测距的原理非常简单,超声波发生器在某一时刻发出一个超声波信号,当这个超声波信号遇到被测物体后会反...
STM32|HC-SR04 超声波测距模块与 DHT11 数字温湿度传感器应用概览 STM32 第七天 超声波传感器 HC-SR04超声波测距模块以其出色的性能脱颖而出。它能够提供2厘米至400厘米的非接触式距离感测,并且测距精度高达3毫米。该模块集成了超声波发射器、接收器以及控制电路,使得测量过程更为便捷。其工作原理也相当简单:...
是一款广泛使用的超声波测距模块,它能够提供2cm至400cm的非接触式距离测量,精度高达3mm。本项目将介绍如何使用STM32微控制器通过HAL库来驱动HC-SR04模块,并附上详细的代码实现。 1. 硬件连接 HC-SR04模块通过三个引脚与STM32连接: VCC:连接到STM32的5V电源。
static void CloseTimerForHc() //关闭定时器 { TIM_Cmd(TIM6, DISABLE); //使能TIMx外设 } //NVIC配置 void hcsr04_NVIC() { NVIC_InitTypeDef NVIC_InitStructure; NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2); NVIC_InitStructure.NVIC_IRQChannel = TIM6_IRQn; //选择串口1中断 ...
本文用的单片机是STM32F103C8T6,超声波测距模块是HC-SR04,显示测距结果用的是0.96寸OLED屏模块。 效果展示 下图中小于10cm时的显示结果有点问题,代码已修复并更新 修复后的结果: 视频演示:https://www.bilibili.com/video/BV1Sg411Z7ex/ 基于STM32和HC-SR04模块实现超声波测距功能 ...