MEMS/传感技术
BBC micro:bit有很多套件搭配用于功能扩展,本篇就用新版的micro:bitV2连接温湿度传感器模块测试显示温湿度
micro:bit电路图
•BBC micro:bit 微控制板V2
•传感器扩充板
•温湿度传感器模块
温湿度传感器模块是数字讯号输出,可以接「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钮重置程序让他重新读取数值。
首先需要先进入Microsoft MakeCode网页在线编辑器,
https://makecode.microbit.org/#editor
在使用温湿度传感器之前,需要扩展温湿度传感器的指令库。打开makecode程序设计平台,滚动至指令区最底部,依序点击进阶-扩展,并使用以下网址安装套件。
温湿度传感器套件安装网址:
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:目前温度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))))
})
审核编辑 :李倩
全部0条评论
快来发表一下你的评论吧 !