玩转硬件之Micro:bit的玩法(四)——声控灯

智能家居的普及在近几年来呈现出了爆发式的增长。随着科技的不断进步和人们对便利生活的追求,越来越多的家庭开始采用智能家居系统,使生活更加智能化、便捷化。

智能家居的普及不仅改变了人们的生活方式,也为家庭带来了更多的便利和舒适。现在,人们可以通过智能手机或者语音助手来控制家中的电器设备,如灯光、空调、电视等,而不需要亲自去操作。这不仅提高了生活的便利性,还节省了能源和时间。而声控灯就是其中之一。

声控灯是一种通过声音控制开关灯光的装置。它通常包含一个麦克风或传感器,可以感应到声音,并根据声音的强弱来控制灯光的开关。当有声音时,声控灯会自动打开灯光;当没有声音时,声控灯会自动关闭灯光。声控灯可以提供更加便捷和智能的灯光控制方式,使用户无需手动开关灯光,只需通过声音就能实现灯光的开关。它在家庭、办公室、酒店等场所中得到广泛应用,提升了生活和工作的舒适度和便利性。

那如果我说Micro:bit也可以实现声控灯,你会信吗?

因为Micro:bit拥有Sound Sensor (声音传感器)可以进行声音探测。

Sound Sensor模块采用了音频处理芯片LM386,可对音频信号进行200倍放大,可用于检测环境声音的有无或判断声音强度的大小(不能测量具体的分贝数)。

本文介绍的声控灯,因为要接入灯,故此我们要将Microb:bit插入到小车扩展模块中,如下图所示,如何操作小车扩展模块,可以参考官方教程。

Step 1 在声音的模块下,定义一个变量用于存储开关
Step 2 如果开关打开,则小车灯亮,并暂停5s后,小车灯灭
Step 3 如果开关关闭,则小车灯灭

执行的效果如下:

附上Javascript代码:

复制代码
input.onSound(DetectedSound.Loud, function () {
    lighton = !(lighton)
    if (lighton) {
        mbit_小车类.RGB_Car_Big2(mbit_小车类.enColor.White)
        basic.pause(5000)
        mbit_小车类.RGB_Car_Big2(mbit_小车类.enColor.OFF)
    } else {
        mbit_小车类.RGB_Car_Big2(mbit_小车类.enColor.OFF)
    }
})
let lighton = false
input.setSoundThreshold(SoundThreshold.Loud, 150)

附上Python的代码:

复制代码
def on_sound_loud():
    global lighton
    lighton = not (lighton)
    if lighton:
        mbit_小车类.RGB_Car_Big2(mbit_小车类.enColor.WHITE)
        basic.pause(5000)
        mbit_小车类.RGB_Car_Big2(mbit_小车类.enColor.OFF)
    else:
        mbit_小车类.RGB_Car_Big2(mbit_小车类.enColor.OFF)
input.on_sound(DetectedSound.LOUD, on_sound_loud)

lighton = False
input.set_sound_threshold(SoundThreshold.LOUD, 150)
相关推荐
wuyk5556 小时前
67.嵌入式C语言进阶:结构体指针实战指南——STM32外设、传感器数据访问的高效技巧
c语言·开发语言·stm32·单片机
西城微科方案开发7 小时前
LCD智能婴儿秤方案
单片机·嵌入式硬件
虹科数字化与AR8 小时前
外科医生必备:安宝特M400手术模式高级设置指南
经验分享
三佛科技-134163842128 小时前
灭蚊灯MCU方案开发,FT60E112-RB作为灭蚊灯主控芯片优势
单片机·嵌入式硬件·物联网·智能家居·pcb工艺
Mr+范8 小时前
电源诱骗芯片CH224K
单片机·学习
起床学FPGA8 小时前
I2C、SPI
单片机·嵌入式硬件
风雨中的蜜蜂9 小时前
CMT2310A 超低功耗高性能射频收发器概述
stm32·单片机·嵌入式硬件
weixin_5372170610 小时前
太极拳资源合集
经验分享
国科安芯10 小时前
基于MOSFET工作电压、电流特性的选型设计
科技·stm32·单片机·嵌入式硬件·系统架构
wuyk55510 小时前
68.嵌入式 C 语言避坑指南:volatile 关键字 —— 单片机中断、寄存器访问的核心技巧
c语言·开发语言·stm32·单片机·嵌入式硬件