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

多途徑實(shí)現(xiàn)Arduino“紅外感應(yīng)燈”

2021-08-11 05:51:06牟曉東
電腦報(bào) 2021年30期
關(guān)鍵詞:檢測

牟曉東

在Arduino開源硬件編程中,常規(guī)實(shí)現(xiàn)方法是在Arduino IDE環(huán)境中進(jìn)行C語言(包括C++)式的代碼編程,代碼精簡、效率比較高。中小學(xué)生通常是從圖形化編程入手,通過將高度集成編譯好的“積木”式模塊進(jìn)行組合來實(shí)現(xiàn)同樣的編程效果,比如Mind+、Mixly等等。除此之外,我們還可以在Python中借助PinPong庫模塊的引入進(jìn)行代碼編程,也能夠讓Arduino控制各種外設(shè)來實(shí)現(xiàn)非常豐富的功能。以“紅外感應(yīng)燈”為例——當(dāng)有物體靠近(默認(rèn)為2~30cm范圍)時(shí),Arduino控制LED燈發(fā)光;否則,LED燈保持熄滅狀態(tài)。

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

實(shí)驗(yàn)器材:Arduino UNO主板一個(gè),紅外線傳感器一個(gè),紅色LED燈一支,三色公對母杜邦線各一根。首先將LED燈長腿(正極)插入13號(hào)引腳,短腿(負(fù)極)插入與之相鄰的GND接地引腳;接著將三根杜邦線一端與紅外傳感器相連,紅色線將VCC引腳與Arduino的5V引腳連接,黑色線負(fù)責(zé)接地(兩端均連接GND),黃色線將紅外傳感器的OUT信號(hào)輸出端與Arduino的7號(hào)引腳相連;最后,通過數(shù)據(jù)線將Arduino與計(jì)算機(jī)USB接口連接,準(zhǔn)備開始編程(如圖1)。

2.常規(guī)Arduino IDE代碼編程實(shí)現(xiàn)“紅外感應(yīng)燈”

首先,在Arduino IDE中進(jìn)行兩個(gè)變量的定義與賦值,語句“int led = 13;”對應(yīng)插接在13號(hào)引腳的紅色LED燈,語句“int irSensorPin = 7;”對應(yīng)插接在7號(hào)引腳的紅外傳感器;接著,在setup()函數(shù)中寫入兩個(gè)語句:“pinMode(led,OUTPUT);”的作用是聲明LED燈的引腳(13號(hào))為輸出模式,而“pinMode(irSensorPin, INPUT);”的作用是聲明紅外傳感器引腳(7號(hào))為輸入模式。

最后,在loop()函數(shù)中寫入一個(gè)“if…else…”選擇結(jié)構(gòu),其中的判斷條件是“digitalRead(irSensorPin) == HIGH”,即判斷從紅外傳感器中讀取的數(shù)字信號(hào)是否為HIGH高電平;高電平是對應(yīng)“沒有物體進(jìn)入檢測范圍”的情況,因此后面要寫一個(gè)“digitalWrite(led,LOW);”語句,控制LED燈處于低電平的熄滅狀態(tài);如果條件不成立,說明紅外傳感器檢測到“有物體進(jìn)入”,則在else后面寫一個(gè)“digitalWrite(led,HIGH);”語句,控制LED燈處于高電平的發(fā)光狀態(tài)(如圖2)。

將程序編譯并上傳,對紅外感應(yīng)燈進(jìn)行檢測:當(dāng)沒有物體靠近時(shí),LED燈熄滅;而當(dāng)有物體進(jìn)入檢測范圍時(shí),LED燈開始發(fā)光(如圖3),直到物體移出后又熄滅。

3.Python代碼編程實(shí)現(xiàn)“紅外感應(yīng)燈”

借助于PinPong第三方庫模塊,我們可以非常方便地在Python中對Arduino進(jìn)行代碼編程。首先需要在Python中進(jìn)行PinPong庫模塊的安裝,方法是在Python的腳本安裝目錄(比如:C:\Users\ZYYZ-BJ\AppData\Local\Programs\Pyth

on\Python38\Scripts)中按住Shift鍵的同時(shí),在空白處點(diǎn)擊右鍵并選擇“在此處打開命令窗口”;接著在彈出的CMD窗口中輸入命令“pip install pinpong”,回車后即可開始安裝,成功后會(huì)顯示“Successfully installed”的提示信息(如圖4)。

首先,進(jìn)入Python IDLE編程環(huán)境后新建一個(gè)Python文件,導(dǎo)入time和pinPong庫模塊:“import time”和“from pinpong.board import Board,Pin”;接著,通過語句“Board(“uno”).begin()”來實(shí)現(xiàn)對Arduino uno板型的初始化操作,同時(shí)還會(huì)自動(dòng)識(shí)別端口號(hào)(比如COM9);然后,建立led和irSensor兩個(gè)變量,語句“l(fā)ed = Pin(Pin.D13, Pin.OUT)”的作用是設(shè)置連接在13號(hào)引腳的LED燈為信號(hào)輸出端,語句“irSensor = Pin(Pin.D7, Pin.IN)”的作用是設(shè)置連接在7號(hào)數(shù)字引腳的紅外傳感器為信號(hào)輸入端。

最后,在“while True:”循環(huán)結(jié)構(gòu)中先建立變量Sensor_Value,并為其賦值為“irSensor.read_digital()”,作用是讀取紅外傳感器所監(jiān)測到的數(shù)字信號(hào);然后建立一個(gè)“if…else…”選擇結(jié)構(gòu),對變量Sensor_Value的值進(jìn)行“是否等于1”的判斷,條件成立的話,說明未檢測到有物體進(jìn)入,則執(zhí)行語句“l(fā)ed.write_digital(0)”,向LED燈的13號(hào)引腳寫入低電平0,即保持熄滅狀態(tài);反之,則通過語句“l(fā)ed.write_digital(1)”向13號(hào)引腳寫入高電平1,控制LED燈發(fā)光。語句“time.sleep(0.1)”的作用是控制每次循環(huán)運(yùn)行均延遲0.1秒,防止消耗過多的系統(tǒng)資源而造成“死機(jī)”。

將程序保存后按功能鍵F5運(yùn)行程序,Arduino紅外感應(yīng)燈開始“工作”:有物體靠近,亮燈;反之,熄滅。

4.Mind+圖形化編程實(shí)現(xiàn)“紅外感應(yīng)燈”

運(yùn)行Mind+進(jìn)入圖形化編程界面,難度比較低,直接通過“積木”塊語句的拖動(dòng)和組合:

首先在左側(cè)通過點(diǎn)擊“擴(kuò)展”項(xiàng)添加“主控板”下的“Arduino Uno”,返回后在“循環(huán)執(zhí)行”中建立一個(gè)“如果…那么執(zhí)行…否則…”選擇結(jié)構(gòu),同樣是對插接在7號(hào)引腳的紅外傳感器進(jìn)行數(shù)字信號(hào)讀取;如果值為1,說明沒有物體進(jìn)入有效檢測范圍,則控制插接在13號(hào)引腳的LED燈熄滅——“輸出為低電平”;反之,則“輸出為高電平”,即控制LED燈發(fā)光(如圖5)。

程序編寫完畢后點(diǎn)擊“上傳到設(shè)備”項(xiàng),當(dāng)出現(xiàn)“上傳成功”提示后,Arduino紅外感應(yīng)燈可以根據(jù)對物體的監(jiān)測進(jìn)行“熄滅、發(fā)光”的自動(dòng)切換,與之前使用Arduino IDE和Python代碼編程所實(shí)現(xiàn)的效果完全一致,大家不妨一試。

猜你喜歡
檢測
QC 檢測
“不等式”檢測題
“一元一次不等式”檢測題
“一元一次不等式組”檢測題
“幾何圖形”檢測題
“角”檢測題
“有理數(shù)的乘除法”檢測題
“有理數(shù)”檢測題
“角”檢測題
“幾何圖形”檢測題
主站蜘蛛池模板: 波多野结衣爽到高潮漏水大喷| 久久性视频| 国产波多野结衣中文在线播放| 有专无码视频| 狠狠v日韩v欧美v| 亚洲欧美综合精品久久成人网| 亚洲精品成人福利在线电影| 国产精品9| 狠狠色丁香婷婷综合| 中国美女**毛片录像在线| 成人综合网址| 国产精品yjizz视频网一二区| 免费欧美一级| 在线国产综合一区二区三区| a在线亚洲男人的天堂试看| 午夜不卡视频| 97精品伊人久久大香线蕉| 香蕉视频国产精品人| 青青久久91| 国产成人区在线观看视频| 噜噜噜综合亚洲| 久久黄色免费电影| 无码高潮喷水在线观看| 欧美午夜在线观看| V一区无码内射国产| 99久久精品免费看国产电影| 国产精品成人第一区| 国产草草影院18成年视频| 国产国语一级毛片在线视频| 综合亚洲色图| 亚洲午夜天堂| 日韩国产亚洲一区二区在线观看| 伊人久久青草青青综合| 国产视频自拍一区| 国产av无码日韩av无码网站| 久久免费看片| 最新日韩AV网址在线观看| 香蕉视频在线精品| 无码国产偷倩在线播放老年人| 亚洲中文字幕手机在线第一页| 亚洲欧美日韩色图| 国产午夜一级淫片| 激情综合激情| 99热这里只有精品久久免费| 久久久久人妻一区精品色奶水| 亚洲国产高清精品线久久| 亚洲欧美日韩精品专区| 欧美成人精品高清在线下载 | 成人国产三级在线播放| 国产精品亚洲精品爽爽| 91小视频在线观看| 四虎永久免费地址| 亚洲视频无码| 亚洲无码免费黄色网址| 一级香蕉视频在线观看| 国产一区在线观看无码| 国产一区二区免费播放| 国产精品3p视频| 久久国产成人精品国产成人亚洲| 国产自视频| 国产成人你懂的在线观看| 综合色在线| 国产XXXX做受性欧美88| 综合成人国产| 国产91导航| 久久99精品国产麻豆宅宅| 欧美不卡二区| 国产视频久久久久| 亚亚洲乱码一二三四区| 亚洲欧州色色免费AV| 国产精品网址在线观看你懂的| 午夜免费视频网站| 久久香蕉国产线看观| 国产精品第一区| 国产成人精品18| 91福利国产成人精品导航| 国产麻豆精品久久一二三| 日韩欧美综合在线制服| 国产精品jizz在线观看软件| 亚洲欧美人成人让影院| 99视频在线免费看| 亚洲视频在线观看免费视频|