999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

多途徑實現Arduino“超聲波測距警示燈”

2021-09-24 18:59:51牟曉東
電腦報 2021年36期

牟曉東

汽車的倒車雷達系統能夠根據車尾與障礙物的間距進行聲音報警,間距值越小,蜂鳴器的“滴滴”嘯叫頻率越高。類似的,我們可以借助于Arduino開發板來制作一個小型“超聲波警示燈”系統,利用超聲波傳感器來檢測和顯示與障礙物的間距,并且能夠根據不同的間距值來控制不同顏色的LED發光:距離遠,非常安全,亮綠燈;距離減小,處于警示區間范圍,亮黃燈;距離接近于警示臨界點,比較危險,亮紅燈。

1.實驗器材與電路連接

實驗器材:Arduino UNO主板一個,HC-SR04超聲波傳感器一個,綠色、黃色和紅色LED燈各一支,面包板一塊,各種顏色的杜邦線若干。

首先,將Arduino的5V電源正極和GND通過杜邦線連接至面包板;HC-SR04超聲波傳感器有四個引腳,其中的VCC和GND分別插接至面包板的正極和負極,Trig信號發射引腳和Echo信號接收引腳分別插接至Arduino的2號和3號數字引腳;綠色、黃色和紅色LED的長腿(正極)通過面包板分別連接至Arduino的4號、7號和8號數字引腳,短腿(負極)與GND連接;最后,通過數據線將Arduino與計算機USB接口連接(如圖1)。

2.Arduino IDE代碼編程實現“超聲波測距警示燈”

在Arduino IDE中首先進行變量的定義,與超聲波傳感器相關的語句包括“int TrigPin = 2;”“int EchoPin = 3;”和“float distance;”,前兩個分別聲明它的信號發射與接收引腳為2號和3號數字引腳,定義的浮點型變量distancd是用來存儲超聲波傳感器所測量的間距值;接著再定義三個整形變量:“int GreenLED = 4;”“int YellowLED = 7;”和“int RedLED =8;”,分別對應綠色、黃色和紅色LED的三個數字引腳(4號、7號和8號)。

在setup()函數中,先通過語句“Serial.begin(9600);”來設置串口監視器的波特率,目的是實時顯示出超聲波傳感器所監測的間距數據;然后是五個pinMode()引腳模式設置語句,除超聲波傳感器的EchoPin設置為INPUT輸入模式外,將它的TrigPin和三個LED燈(GreenLED、YellowLED、RedLED)均設置為OUTPUT輸出模式(如圖2)。

在loop()函數中,首先要控制超聲波傳感器的發射端進行信號的觸發,即使用“低-高-低”的短時間脈沖:語句“digitalWrite(TrigPin, LOW);”和“delayMicroseconds(20);”的作用是控制發射端保持20微秒的低電平;然后通過語句“digitalWrite(TrigPin,HIGH);”和“delayMicroseconds(20);”,控制發射端再保持20微秒的高電平(即觸發一個20微秒的高脈沖);最后的語句“digitalWrite(TrigPin, LOW);”是控制發射端再次處于低電平狀態。

接著,為存儲間距值的變量distance進行賦值:“distance=pulseIn(EchoPin,HIGH) * 340/2/

10000;”,計算方法是借助pulseIn()來實現——此時要特別注意它的單位是“微秒”(空氣中的聲速值按340米/秒計),有“米與厘米”和“秒與微秒”間的單位換算(相當于“除以10000”);而且超聲波傳感器所監測的間距值是“超聲波從發射端發出、向前運動并碰到障礙物后、再返回至接收端”的往返值(要“除以2”),因此在表達式中要對“pulseIn(EchoPin, HIGH)”的值再進行“*340/2/10000”的計算。然后,在串口監視器中輸出一行提示信息,語句為“Serial.print("與障礙物間的距離為:"); ”;接著再通過“Serial.print(distance); ”和“Serial.print(“cm”); ”兩行語句,將distance變量和單位(“厘米”)在同一行顯示輸出;而后面的語句“Serial.println(); ”,作用是輸出一個“換行”(相當于“回車”操作)。

接下來要構建一個“if…else if…else…”三分支選擇結構,對變量distance的值進行區間范圍判斷:如果距離大于30厘米(“distance >= 30.00”),執行語句“digitalWrite(GreenLED,HIGH);”,控制綠色LED燈發光;如果距離在15厘米和30厘米之間(“distance < 30.00 and distance >= 15.00”),則執行語句“digitalWrite(YellowLED,HIGH);”,控制黃色LED燈發光;否則的話——相當于距離小于15厘米(“distance < 15.00”),則執行語句“digitalWrite(RedLED,HIGH);”,控制紅色LED燈發光。

最后,添加一個“delay(500); ”語句,作用是控制每次循環均延遲500毫秒;而三個digitalWrite()語句則是向三個LED連接引腳寫入低電平,作用是關閉所有的LED燈,從而為下一次循環的正確響應做好初始化準備(如圖3)。

主站蜘蛛池模板: 成人午夜网址| 538国产视频| 最新国产成人剧情在线播放| 国产成人综合久久| 欧美综合成人| 亚洲人成电影在线播放| 亚洲精品综合一二三区在线| 国产精品短篇二区| 欧美亚洲欧美区| 久久综合丝袜长腿丝袜| 亚洲狠狠婷婷综合久久久久| 亚洲制服丝袜第一页| 欧美中文字幕第一页线路一| 国产精品亚洲五月天高清| 91视频首页| 欧美一级视频免费| 亚洲AV无码一二区三区在线播放| 天堂成人av| 欧美日韩在线观看一区二区三区| 99久久精品视香蕉蕉| 亚洲国产成人综合精品2020 | 成人午夜视频网站| 91成人在线免费视频| 国产人成在线观看| 国产在线观看99| 国内精品伊人久久久久7777人| Aⅴ无码专区在线观看| 秋霞一区二区三区| 亚洲精品国产日韩无码AV永久免费网 | 亚洲swag精品自拍一区| 国产嫖妓91东北老熟女久久一| 一本一本大道香蕉久在线播放| 亚洲狼网站狼狼鲁亚洲下载| 国产丝袜啪啪| 波多野结衣爽到高潮漏水大喷| 亚洲日本在线免费观看| 天天色天天操综合网| 国产乱人伦AV在线A| 欧美在线视频a| 性视频一区| 亚洲AⅤ波多系列中文字幕| 中文字幕乱码二三区免费| 中文字幕欧美日韩| 国产综合网站| 国产尤物jk自慰制服喷水| 日本精品一在线观看视频| 91国内外精品自在线播放| 色爽网免费视频| 国产打屁股免费区网站| 国产丝袜第一页| 亚洲三级片在线看| 一级毛片在线播放| 国产女人综合久久精品视| 国产欧美日韩91| 国产精品永久不卡免费视频| 亚洲国产欧美国产综合久久| 久久精品一品道久久精品| 亚洲无码四虎黄色网站| 国产凹凸一区在线观看视频| 性色在线视频精品| 色综合婷婷| 国产成人精品优优av| 亚洲日韩精品综合在线一区二区| 亚洲另类国产欧美一区二区| 日本人妻丰满熟妇区| 中文字幕亚洲专区第19页| 精品无码国产一区二区三区AV| 99精品在线视频观看| 欧美高清国产| 欧美日韩北条麻妃一区二区| 亚洲熟女偷拍| 亚洲精品桃花岛av在线| 不卡国产视频第一页| 亚国产欧美在线人成| 亚洲男人的天堂久久香蕉网| 亚洲精品自拍区在线观看| 东京热高清无码精品| 亚洲欧美国产高清va在线播放| 国产哺乳奶水91在线播放| 天天做天天爱夜夜爽毛片毛片| 国产精品成人免费综合| 992Tv视频国产精品|