BBC micro:bit有很多套件搭配用于功能擴展,本篇就用新版的micro:bitV2連接溫濕度傳感器模塊測試顯示溫濕度
micro:bit電路圖
BBC micro:bit 微控制板V2
傳感器擴充板
溫濕度傳感器模塊
溫濕度傳感器模塊是數(shù)字訊號輸出,可以接「0、 1、 2、 8、 12、13、14、 15、 16、 19、20」的 micro:bit訊號端上,建議使用的是0、1、2腳位。本范例連接到「P0」
注意: 測試時發(fā)現(xiàn)輸入電壓如果切換到5V時會發(fā)生無法正常顯示溫、濕度的問題、請記得把V1切到3V3當中(如上圖紅框處)。
以下函式庫測試后適用于micro:bit v2,發(fā)現(xiàn)一開始如果溫、濕度顯示-999.0為正常,請等程序驗證后即可正常顯示溫、濕度,如還是無法正常顯示可以嘗試將MICRO USB供電改為擴充版供電、重新插拔傳感器的3pin扁平電纜或換一條線或是按板子背后的RESET鈕重置程序讓他重新讀取數(shù)值。
首先需要先進入Microsoft MakeCode網頁在線編輯器,
https://makecode.microbit.org/#editor
在使用溫濕度傳感器之前,需要擴展溫濕度傳感器的指令庫。打開makecode程序設計平臺,滾動至指令區(qū)最底部,依序點擊進階-擴展,并使用以下網址安裝套件。
溫濕度傳感器套件安裝網址:
https://github.com/alankrantas/pxt-DHT11_DHT22
進階;擴展套件的位置
使用網址安裝sensors的套件方法
使用搜尋DHT11安裝sensors的套件方法
新增后在上方可以看見增加的DHT11/DHT22套件
Microsoft MakeCode積木畫布 (適用microbitv2)
使用pxt-DHT11_DHT22此函式庫時(完整程序如下),需先宣告你要使用攝氏溫度還是華氏溫度
并且要設定此傳感器Query為DHT11(如為DHT22傳感器請選擇DHT22)
設定Data pin為P0
Pin pull up為true
Serial output為false
Wait 2 sec after query為true
可透過micro:bit顯示指示燈看到溫濕度傳感器的溫度和濕度的狀態(tài)。會四舍五入小數(shù)點輪流顯示T:目前溫度H:目前濕度。
JavaScript 程序
basic.forever(funcTIon() {
basic.pause(100)
dht11_dht22.selectTempType(tempType.celsius)
dht11_dht22.queryData(
DHTtype.DHT11,
DigitalPin.P0,
true,
false,
true
)
basic.showString(“T:”)
basic.showString(“” +(Math.round(dht11_dht22.readData(dataType.temperature))))
basic.showString(“H:”)
basic.showString(“” +(Math.round(dht11_dht22.readData(dataType.humidity))))
})
更多信息可以來這里獲取==>>電子技術應用-AET<<