HC-SR04超声波测距模块可提供2cm-400cm的非接触式距离感测功能,测距精度可达高到3mm。
模块包括超声波发射器、接收器与控制电路。
基本工作原理:
(1)采用IO口TRIG触发测距,给最少10us的高电平信呈。
(2)模块自动发送8个40khz的方波,自动检测是否有信号返回; (3)有信号返回,通过IO口ECHO输出一个高电平,高电平持续的时间就是超声波从发射到返回的时间。测试距离=(高电平时间*声速(340M/S))/2;
1 int ledPin = 2; 2 int echoPin = 8; 3 int trigPin = 7; 4 void setup(){ 5 pinMode(ledPin,OUTPUT); 6 pinMode(echoPin,INPUT); 7 pinMode(trigPin,OUTPUT); 8 } 9 void loop(){ 10 long duration; 11 digitalWrite(trigPin,LOW); 12 delay(10); 13 digitalWrite(trigPin,HIGH); 14 delay(10); 15 digitalWrite(trigPin,LOW); 16 duration = pulseIn(echoPin,HIGH); //检测高电平时间 17 if (duration/2/29 >= 160){ //距离大于160cm时LED灯亮 18 digitalWrite(ledPin, HIGH); 19 }else{ 20 digitalWrite(ledPin,LOW); 21 } 22 delay(1000); 23 }