日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

arduino超声波测距接线图详细_arduino——超声波测距仪(笔记)

發布時間:2024/3/7 编程问答 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 arduino超声波测距接线图详细_arduino——超声波测距仪(笔记) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

脈沖寬度測量函數

pulseIn()

pulse 是脈搏的意思,音標[p?ls],怕了死,脈搏停了就死了。(記憶力越來越差了,只能采用一些特殊的方法記憶)

pulseIn(pin,value,timeout)

pin,引腳

value,讀取的脈沖類型,分為HIGH和LOW

timeout,超時時長單位為微秒,數據類型為長整型。

超聲波測距儀工作原理

超聲波可以理解為一種聲波,聲音在空氣中傳播,碰到障礙物立即返回,聲音的速度為340米/秒,那么根據時間可以計算發射點到障礙物的距離。

S=340*t(時間,單位為秒)/2

除以2的意思是聲波一來一回等于走了兩趟。

image.png

image.png

線路圖

image.png

(由于沒有這個超聲波測距儀,就沒有貼實物圖)

代碼部分

由于沒有實物,所以盡量將注釋寫清楚,來熟悉工組原理。

/*

SRO4超聲波傳感器驅動

*/

const int TrigPin = 2;//設置2號數字引腳為觸發引腳

const int EchoPin = 3;//設置3號數字引腳為接收引腳

float distance;//定義距離為浮點型數據

void setup() {

//初始化串口信息以及連接SRO4的引腳

Serial.begin(9600);

pinMode(TrigPin,OUTPUT);//設置輸出引腳此處為2

pinMode(EchoPin,INPUT);//檢測3號引腳輸入的脈沖寬度,需要先設置為輸入狀態

}

void loop() {

//制作一個10微秒的高頻脈沖觸發2號引腳,超聲波測距儀觸發至少需要10微秒的高電平信號

digitalWrite(TrigPin,LOW);//先設置為低電平

delayMicroseconds(2);//持續2微秒

digitalWrite(TrigPin,HIGH);//設置為高電平

delayMicroseconds(10);//持續10微秒

digitalWrite(TrigPin,LOW);//再設置為低電平,這樣模擬出了脈沖信號

distance = pulseIn(EchoPin,HIGH)/58;//返回的是脈沖寬度/58得到實際距離

delay(1000);

總結

以上是生活随笔為你收集整理的arduino超声波测距接线图详细_arduino——超声波测距仪(笔记)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。