BBC micro:bit V2使用DHT11溫溼度感測器模組方法

作者/攝影  郭俊廷
時間  1hour
難度 ★☆☆☆☆
材料表

在我們的cavedu的gitbook當中有很多套件的教學,這其中也包含了我們的洞洞么教學材料包,其中裡面有使用到micro:bit連接DHT11溫溼度感測器模組的方法,我們發現有人使用新版的micro:bit V2搭配上舊的函式庫時會有無法正常顯示溫溼度的情形,測試之後發現micro:bit V2無法使用一些DHT11的舊的函式庫,需要使用另一個函式庫且輸入電壓需要調整到3.3V才能正常顯示溫溼度。

 

更多洞洞么教學材料包的模組使用教學:模組使用教學- cavedu

更多的micro:bit教學影片:micro:bit影片教學- cavedu

至於新版的micro:bit V2多了那些功能可以參考以下文章:新版BBC micro:bit,多了麥克風與小喇叭還有觸碰功能! – CAVEDU教育團隊技術部落格

 

micro:bit電路圖

DHT11溫溼度感應器模組數位訊號輸出, 可以接「0、 1、 2、 8、 12、13、14、 15、 16、 19、20」的 micro:bit訊號端上,建議使用的是0、1、2腳位。本範例連接到「P0

 

 

注意: 測試時發現輸入電壓如果切換到5V時會發生無法正常顯示溫、濕度的問題、請記得把V1切到3V3當中(如上圖紅框處)。

以下函式庫測試後適用於micro:bit v2,發現一開始如果溫、濕度顯示-999.0為正常,請等程式驗證後即可正常顯示溫、濕度,如還是無法正常顯示可以嘗試將MICRO USB供電改為擴充版供電、重新插拔感測器的3pin排線或換一條線或是按板子背後的RESET鈕重置程式讓他重新讀取數值。

如無法正常顯示溫濕度請先檢查上述問題,有無正確測試過。

如上述步驟檢查過使用我們洞洞么教學材料包裡面的DHT11模組,在使用micro:bit時,無法正常顯示溫濕度,請聯絡我們。

 

首先需要先進入Microsoft MakeCode網頁線上編輯器,網址如下

https://makecode.microbit.org/#editor

在使用DHT11溫溼度感應器之前,需要擴展DHT11溫溼度感應器的指令庫。打開makecode程式設計平臺,滾動至指令區最底部,依序點擊進階-擴展,並使用以下網址安裝套件。(經測試此函式庫DHT22感測器也可正常使用)

DHT11溫溼度感應器套件安裝網址:

https://github.com/alankrantas/pxt-DHT11_DHT22

 

進階;擴展套件的位置
使用網址安裝sensors的套件方法
使用搜尋DHT11安裝sensors的套件方法

新增後在上方可以看見增加的DHT11/DHT22套件

Microsoft MakeCode積木畫布 (適用microbit v2)

使用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顯示指示燈看到DHT11溫溼度感應器的溫度和濕度的狀態。會四捨五入小數點輪流顯示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))))
})

 

2 thoughts on “BBC micro:bit V2使用DHT11溫溼度感測器模組方法

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *