STM32F407学习笔记——HC-SR04模块(基本测距应用)

STM32F407学习笔记——HC-SR04模块(基本测距应用)

一、基本原理:
定义stm32的GPIO,给予Trig高电平(大于10us即可这里给予的是20us),再拉低发送超声波,超声波在碰到障碍物时返回被超声波模块接受,Echo输出高电平,通过定时器得出Echo高电平持续时间即可计算与障碍物之间的距离。

二、代码功能:
通过stm32控制超声波模块将测得的距离反馈在串口上。

三、接线:Trig——PA6 、Echo——PA7

四、代码部分:
HC-SR04.h

#ifndef _sr04_H
#define _sr04_H
#include "sys.h"

#define TRIG_Send PAout(6) 
#define ECHO_Reci PAin(7) 

float Senor_Using(void);
void TIM4_Int_Init(void);




#endif

HC-SR04.c

#include "HC-SR04.h"
#include "delay.h"
#include "math.h"

int overcount=0; 


//GPIO及定时器设置
void TIM4_Int_Init()
{
   
   
GPIO_InitTypeDef GPIO_InitStruct;
TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure;
NVIC_InitTypeDef NVIC_InitStructure;

RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM4, ENABLE); 
RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOA, ENABLE);

GPIO_InitStruct.

你可能感兴趣的:(单片机,stm32)