|
本课学习目标 1. 掌握超声波测距计算公式、工作原理 2. 学会pulseIn脉冲读取函数用法 3. 实现实时测距、近距离蜂鸣报警功能 所需器材 Uno主板、HC-SR04超声波、有源蜂鸣器、杜邦线 一、核心理论 • 引脚定义:Trig触发发射、Echo接收回波 • 测距公式:距离cm = 回波时长 × 0.034 ÷ 2 • 有效测距范围:2cm-400cm,超出范围数据失效 二、图文接线 【插图点位11】图10-1 超声波模块接线图 VCC-5V、GND-GND、Trig-10引脚、Echo-11引脚;蜂鸣器-8引脚 三、测距+防撞报警代码 arduino
int Trig = 10;
int Echo = 11;
int buzzer = 8;
float distance;
void setup() {
Serial.begin(9600);
pinMode(Trig,OUTPUT);
pinMode(Echo,INPUT);
pinMode(buzzer,OUTPUT);
}
void loop() {
//发射触发脉冲
digitalWrite(Trig,LOW);
delayMicroseconds(2);
digitalWrite(Trig,HIGH);
delayMicroseconds(10);
digitalWrite(Trig,LOW);
//计算距离
long time = pulseIn(Echo,HIGH);
distance = time * 0.034 / 2;
Serial.print("距离:");
Serial.print(distance);
Serial.println(" cm");
//小于10cm蜂鸣报警
if(distance < 10){
digitalWrite(buzzer,HIGH);
}else{
digitalWrite(buzzer,LOW);
}
delay(300);
} |
避坑要点 模块必须5V供电;近距离墙面测距精准,毛绒、曲面物体测距不准 课后作业 修改代码,距离越近,蜂鸣器鸣叫频率越快
|