亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        多方法實(shí)現(xiàn)Arduino“水火警報(bào)儀”

        2021-08-17 16:56:29牟曉東
        電腦報(bào) 2021年31期
        關(guān)鍵詞:水火蜂鳴器低電平

        牟曉東

        水火無情,為了能對“水情”“火情”的意外情況及時(shí)報(bào)警,我們借助雨水傳感器和火焰?zhèn)鞲衅?,利用Arduino開發(fā)制作一個(gè)“水火警報(bào)儀”系統(tǒng)——LED燈發(fā)光、蜂鳴器發(fā)聲和屏幕顯示警報(bào)信息。

        1.實(shí)驗(yàn)器材與電路連接

        實(shí)驗(yàn)器材:Arduino UNO主板一個(gè),雨水傳感器一個(gè),火焰?zhèn)鞲衅饕粋€(gè),紅色LED燈一支,低電平觸發(fā)蜂鳴器一個(gè),面包板一塊,各色杜邦線若干。

        首先,將Arduino的5V和GND通過杜邦線連接至面包板;接著,將雨水傳感器和火焰?zhèn)鞲衅鞯腣CC和GND端均插接至面包板(與Arduino的5V和GND相連),二者的DO數(shù)字輸出端則分別插接至Arduino的7號和8號數(shù)字引腳;然后,將蜂鳴器的VCC和GND端同樣也插接至面包板,它的I/O信號端插接至12號數(shù)字引腳;最后,將LED燈長腿插入13號、短腿插入相鄰的GND引腳,再通過數(shù)據(jù)線將Arduino與計(jì)算機(jī)USB接口連接(如圖1)。

        值得一提的是,雨水傳感器和火焰?zhèn)鞲衅鞯臄?shù)字輸出信號均為“反邏輯”結(jié)果——當(dāng)雨水傳感器的感應(yīng)板上沒有水滴時(shí),數(shù)字輸出信號是高電平“1”;而當(dāng)檢測到有水滴時(shí),則輸出低電平“0”。另外蜂鳴器上如果標(biāo)有“低電平觸發(fā)”字樣時(shí),其工作模式與此類似,只有使用低電平“0”去觸發(fā)時(shí)才會(huì)發(fā)聲。

        2.Arduino IDE代碼編程實(shí)現(xiàn)“水火警報(bào)儀”

        首先進(jìn)行變量的定義:語句“int Beep = 12;”和“int led = 13;”分別對應(yīng)蜂鳴器和LED燈的引腳編號,語句“int WaterSensorPin = 7;”和“int FireSensor

        Pin = 8;”則分別對應(yīng)雨水傳感器和火焰?zhèn)鞲衅鞯囊_編號;接著,在setup()函數(shù)中對它們進(jìn)行引腳模式的聲明,蜂鳴器和LED燈是輸出模式——“pinMode(Beep,OUTPUT);”“pinMode(led,OUTPUT);”,兩個(gè)傳感器是輸入模式——“pinMode(WaterSensorPin,INPUT);”“pinMode(FireSensor

        Pin,INPUT);”;然后,再通過語句“Serial.begin(9600);”設(shè)置串口監(jiān)視器的波特率(如圖2)。

        在loop()函數(shù)中,先定義WaterSensorValue和FireSensorValue兩個(gè)變量,通過“int WaterSensor

        Value = digitalRead(WaterSensorPin);”和“int FireSensorValue = digitalRead(FireSensor

        Pin);”兩個(gè)語句,實(shí)現(xiàn)分別讀取雨水傳感器和火焰?zhèn)鞲衅鲾?shù)字信號;接著,構(gòu)建“if……else……”雙分支選擇結(jié)構(gòu),判斷雨水傳感器和火焰?zhèn)鞲衅魉鶛z測的信號是否為低電平:“WaterSensorValue == LOW or FireSensorValue == LOW”,其中有一個(gè)成立(或同時(shí)成立)的話,則進(jìn)行“亮燈、發(fā)聲、屏顯”三種形式的報(bào)警——語句“digitalWrite(led,HIGH);”控制LED燈,語句“digitalWrite(Beep,LOW);”控制蜂鳴器(注意是低電平觸發(fā)),語句“Serial.println(“警報(bào)——水火無情,火速檢查!”);”是向串口監(jiān)視器輸出提示信息;否則,則通過類似的三個(gè)語句來實(shí)現(xiàn)“熄燈、無聲、屏顯”——“digitalWrite(led,LOW);”“digitalWrite(Beep,HIGH);”和“Serial.println(“情況正常,請保持!”);”;最后,添加遲延0.5秒鐘的語句“delay(500);”(單位是毫秒),避免死機(jī)。完成程序的編寫(如圖3)。

        保存程序并編譯、上傳至Arduino,打開串口監(jiān)視器后對“水火警報(bào)儀”進(jìn)行測試:在沒有“水情”“火情”的正常情況下,LED燈不亮、蜂鳴器不響,屏幕顯示“情況正常,請保持!”;當(dāng)在雨水傳感器的感應(yīng)板上滴水滴時(shí)(或用濕紙巾接觸),LED燈發(fā)光、蜂鳴器發(fā)聲,屏幕顯示“警報(bào)——水火無情,火速檢查!”;或者使用打火機(jī)靠近火焰?zhèn)鞲衅鬟M(jìn)行“打火”測試,同樣也會(huì)觸發(fā)警報(bào)(如圖4)。

        3.Python代碼編程實(shí)現(xiàn)“水火警報(bào)儀”

        使用Python同樣可以控制Arduino實(shí)現(xiàn)“水火警報(bào)儀”。首先,通過語句“import time”和“from pinpong.board import Board,Pin”導(dǎo)入time和pinpong庫,并且初始化Arduino uno開發(fā)板:“Board(“uno”).begin()”;接著,通過語句“Beep = Pin(Pin.D12, Pin.OUT)”和“l(fā)ed = Pin(Pin.D13, Pin.OUT)”,聲明蜂鳴器和LED燈分別插接在Arduino的12和13號數(shù)字引腳,并且均為數(shù)字輸出端;類似地,語句“WaterSensor = Pin(Pin.D7, Pin.IN)”和“FireSensor = Pin(Pin.D8, Pin.IN)”,則是對雨水傳感器和火焰?zhèn)鞲衅鬟M(jìn)行聲明,分別接插在7號和8號數(shù)字引腳,且均為數(shù)字輸入端。

        猜你喜歡
        水火蜂鳴器低電平
        數(shù)字電路中“邏輯非”的用法辨析
        電動(dòng)自行車產(chǎn)品車速提示音檢測現(xiàn)狀和整改技術(shù)研究(2)
        水火大比拼
        鐵道車輛高/低電平信號智能發(fā)生器設(shè)計(jì)
        掌控板制作簡易鋼琴
        噴火魚VS射水魚,水火較量誰更強(qiáng)
        水火人生
        海峽姐妹(2019年3期)2019-06-18 10:37:08
        單片機(jī)驅(qū)動(dòng)蜂鳴器的程序設(shè)計(jì)
        2017款凱迪拉克2.8L/3.0L/3.2L/3.6L車型低電平參考電壓總線電路圖
        水火相容
        蜜臀av一区二区三区人妻在线| 人妻少妇乱子伦无码视频专区| 亚洲欧美国产国产综合一区| 国产高潮刺激叫喊视频| 亚洲AV无码一区二区水蜜桃| 国产夫妻精品自拍视频| 精品亚洲成a人在线观看| 啪啪无码人妻丰满熟妇| 亚洲日产无码中文字幕| 男的和女的打扑克的视频| 丝袜美腿一区二区国产| 国产成人aaaaa级毛片| 日韩在线看片| 日韩乱码精品中文字幕不卡| 日本一区二区三区人妻| 无码国产伦一区二区三区视频| 久久精品国产亚洲vr| 免费女同毛片在线不卡| 久久99热国产精品综合| 欧洲精品免费一区二区三区| 国内精品伊人久久久久av| 一区二区三区精品亚洲视频| 欧洲美女黑人粗性暴交视频| 毛片24种姿势无遮无拦| 久草热这里只有精品在线| 久久久精品久久日韩一区综合| 国产高中生在线| 亚洲第一区无码专区| 一本色道久久综合亚洲精品不| 亚洲成熟丰满熟妇高潮xxxxx| 色偷偷偷久久伊人大杳蕉| 欧美整片第一页| 激情乱码一区二区三区| 综合图区亚洲另类偷窥| 最近最好的中文字幕2019免费| 日韩精品一区二区三区四区| 日本韩国三级在线观看| 内射人妻少妇无码一本一道| 日本一区二区不卡视频| 亚洲av成人一区二区三区不卡| 精品人妻av区乱码色片|