Cloud Studio代码运行 //单次获取测量距离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_...
**芯片使用的是STM32F103ZET6。** 本次使用定时器去驱动HC-SR04,没有使用屏幕(主要没有找到),使用了串口进行数据显示。 时钟配置如下: 定时器配置 使用了定时器二,配置如下: 开启定时器的中断 GPIO引脚配置 使用了PA6和PA7两个引脚进行配置,分别做TRIG和ECHO。 串口配置 核心代码 HC-SRO4代码 /** 作者:Prai...
#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级延时函数 */#defineHC_SR04_Delay_Us...
链接:https://blog.csdn.net/as480133937/article/details/99407485 一、HC-SR04简单介绍 HC-SR04超声波模块常用于机器人避障、物体测距、液位检测、公共安防、停车场检测等场所。HC-SR04超声波模块主要是由两个通用的压电陶瓷超声传感器,并加外围信号处理电路构成的. 实物图: 接口定义: 新版的HC-SR04增加UART和IIC...
HC-SR04与STM32的连接如下: VCC:连接到STM32的3.3V或5V电源。 GND:连接到STM32的地。 TRIG(触发):连接到STM32的一个GPIO引脚,用于发送触发信号。 ECHO(回声):连接到STM32的另一个GPIO引脚,用于接收回声信号。 四、软件编程 1. 初始化GPIO 首先,需要初始化STM32的GPIO引脚,用于控制TRIG和读取ECHO信号。
本文用的单片机是STM32F103C8T6,超声波测距模块是HC-SR04,显示测距结果用的是0.96寸OLED屏模块。 效果展示 下图中小于10cm时的显示结果有点问题,代码已修复并更新 修复后的结果: 视频演示:https://www.bilibili.com/video/BV1Sg411Z7ex/ HC-SR04硬件概述 ...
STM32 第七天 超声波传感器 HC-SR04超声波测距模块以其出色的性能脱颖而出。它能够提供2厘米至400厘米的非接触式距离感测,并且测距精度高达3毫米。该模块集成了超声波发射器、接收器以及控制电路,使得测量过程更为便捷。其工作原理也相当简单:通过IO口TRIG触发测距,只需提供最少10微秒的高电平信号。随后,模块会...
*函数名称:Drv_Hcsr04_Init *函数功能:初始化HC-SR04 *输入参数:无 *返回值:无 *备 注:初始化HC-SR04引脚的同时,初始化了TIM2,用来记录高电平持续时间 初始化完TIM2后,没有使能,当Echo收到高电平后使能 *=== */voidDrv_Hcsr04_Init(void)// Hc-sr04初始化{// 结构体定义TIM_TimeBaseInitTypeDef TI...
本次实验旨在利用STM32与HC_SR04模块实现超声波测距功能,并能够将测距数据实时通过串口传输至电脑屏幕进行显示。实验原理基于超声波的传播特性,通过测量超声波从发射到接收的时间差来计算距离。具体来说,超声波发射器向某一方向发射超声波,并在发射的同时开始计时。当超声波遇到障碍物并返回时,接收器会立即停止计时...
HC-SR04的时序图如下: 然后,将接收到的脉冲的宽度用于计算到反射物体的距离。这可以通过我们在初中学到的简单的距离-速度-时间方程来解决。 距离=速度x时间 接线 将HC-SR04和0.96寸OLED屏连接到STM32。 温度对距离测量的影响 尽管HC-SR04对于我们的大多数项目来说都相当准确,例如入侵者检测或接近警报;但是有时候...