玩转硬件之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)
相关推荐
可乐鸡翅好好吃19 小时前
从四个 ble_evt_handler 看 Nordic BLE 架构:模块化解耦与优先级控制
单片机·嵌入式硬件
三佛科技-1873661339719 小时前
LPK8717省外围无需启动电阻,12W自供电PSR控制芯片恒压恒流方案
单片机·嵌入式硬件
陶瓷好烦20 小时前
智能编码助手:VSCode+Keil+Kilo Code打造自然语言编程环境
vscode·stm32·单片机
xuhaoyu_cpp_java20 小时前
Maven学习(一)
java·经验分享·笔记·学习·maven
cmpxr_20 小时前
【单片机】51单片机的晶振选择
单片机·嵌入式硬件·51单片机
松小白song20 小时前
如何在定时器中断中实现PWM波形切换?
stm32·单片机·嵌入式硬件
be to FPGAer21 小时前
设计约束命令和SDC命令
单片机·嵌入式硬件
碧寒21 小时前
解决:linux开机报错:Invalid Partition Table
linux·服务器·经验分享
C^h1 天前
RT thread使用u8g2点亮oled显示屏
linux·单片机·嵌入式硬件·嵌入式
UTP协同自动化测试1 天前
智能家居中控屏测试:触摸屏操作 + I2C 读取传感器 + UART 与子设备通信 + GPIO 控制
功能测试·单片机·嵌入式硬件·测试工具·智能家居