# 超音波測距 SR04

模組工作原理: 採用I/O觸發測距,給至少為10us的高電位信號 模組自動發送 8個 40KHZ的方波,自動檢測是否有信號返回 有信號返回,通過I/O輸出一高電位,高電位持續的時間就是超聲波從發射到返回的時間 測試距離 =(高電位時間 x 聲速(340M / S))/ 2 規格: 電源:DC5V/2mA 輸出電位( 1/ 0):5V/ 0V 精度:3mm 距離範圍:2 ~ 450cm 有效的角度:<15℃ 觸發輸入信號:10uS TTL pulse ECHO輸出信號: Input TTL lever signal and the range in proportion 接線方式:VCC→5V、trig (控制端)→任意Digital Pin echo (接收端)→任意Digital Pin、GND→GND

程式範例:

int trigPin = 12;                  //Trig Pin
int echoPin = 11;                  //Echo Pin
long duration, cm, inches;
 
void setup() {
  Serial.begin (9600);             // Serial Port begin
  pinMode(trigPin, OUTPUT);        //Define inputs and outputs 
  pinMode(echoPin, INPUT);
}
 
void loop()
{
  digitalWrite(trigPin, LOW);
  delayMicroseconds(5);
  digitalWrite(trigPin, HIGH);     // 給 Trig 高電位,持續 10微秒
  delayMicroseconds(10);
  digitalWrite(trigPin, LOW);
  pinMode(echoPin, INPUT);             // 讀取 echo 的電位
  duration = pulseIn(echoPin, HIGH);   // 收到高電位時的時間
 
  cm = (duration/2) / 29.1;         // 將時間換算成距離 cm 或 inch  
  inches = (duration/2) / 74; 
  Serial.print("Distance : ");  
  Serial.print(inches);
  Serial.print("in,   ");
  Serial.print(cm);
  Serial.print("cm");
  Serial.println();
  
  delay(1000);
}

電路(接線) 結果: