一、声音传感器介绍
声音传感器(Sound Sensor)是一种能够检测环境中声音或噪音强度的传感器。它能够感知声音波的振动并将其转化为电信号。声音传感器广泛应用于声音检测、噪音监测、语音识别、智能家居、机器人、安防系统等多个领域。
声音传感器基本介绍:
工作原理:
声音传感器的工作原理是基于麦克风(或声波传感器)接收周围环境中的声音波。当声音波(如说话声、音乐、鼓声等)传到麦克风时,它会使麦克风内的振膜或传感元件发生微小的震动,这种震动会转化为电信号。声音传感器中的电子电路会对这个电信号进行放大、处理,然后输出信号,通常输出为模拟电压信号或数字信号。
- 模拟信号输出:模拟信号与声音强度成正比,声音越大,输出的电压越高。
- 数字信号输出:一般通过内建的比较器将声音信号转换成高低电平(0和1)。如果声音大于设定的阈值,输出高电平,否则输出低电平。
主要特点:
- 高灵敏度:声音传感器通常具有较高的灵敏度,能够感应到较远距离的声音变化。
- 输出方式多样:可以是模拟输出(电压信号)或数字输出(高低电平信号)。
- 低功耗:大多数声音传感器设计上具有低功耗特性,适合长期运行。
- 易于集成:声音传感器通常很容易与控制器(如Arduino、树莓派等)集成,适合各种DIY项目。
二、声音传感器接线说明
以下是 声音传感器 的接线说明表,详细描述了每个引脚的功能以及如何连接到控制器(如Arduino等):
声音传感器接线说明表:
声音传感器引脚 | 连接到 | 说明 |
---|---|---|
VCC | 电源引脚(5V 或 3.3V) | 连接至STM32单片机的电源引脚,提供电源。电压一般为5V或3.3V,具体电压请参考传感器规格。 |
GND | 地线(GND) | 连接至STM32单片机的地线(GND),作为电路的公共地,确保电流回流正常。 |
OUT | 控制引脚(如数字输入引脚或模拟输入引脚) | 输出信号。可以连接至STM32单片机的数字输入引脚(如Arduino的D2)或模拟输入引脚(如A0)。数字输出通常为高电平(1)表示检测到声音,低电平(0)表示没有声音。模拟输出则根据声音的强度输出电压信号。 |
三、测试说明、声音传感器驱动代码
编译环境:keil5
测试单片机: STM32F103C8T6
功能:功能1:采集声音报警数据在OLED屏幕上显示出来,检测声音触发蜂鸣器报警
功能2:把采集声音报警数据发送到串口调试助手上
main.c文件编写声音传感器驱动代码如下:
#include "stm32f10x.h" // Device header
#include "delay.h"
#include "OLED.h"
#include "SOUND.h"
#include "FMQ.h"
#include "Serial.h"
int Sound_Level;
int main(void)
{
OLED_Init();
mfq_Init();
SOUND_Init();
Serial_Init();
OLED_ShowChinese(20, 0, "嵌入式");
OLED_ShowString(70,0,"Dora",OLED_8X16);
OLED_ShowChinese(20, 24, "声音传感器");
OLED_ShowChinese(10, 47, "蜂鸣器:");
OLED_Update();
while(1)
{
Sound_Level = SOUND_Get();
if(Sound_Level == 0)
{
fmq_on();
OLED_ClearArea(66,47,20,13);
OLED_ShowChinese(66, 47, "开");
OLED_Update();
printf("蜂鸣器 开\n");
Delay_ms(1200);
}
else
{
fmq_off();
OLED_ClearArea(66,47,20,13);
OLED_ShowChinese(66, 47, "关");
OLED_Update();
printf("蜂鸣器 关\n");
}
}
}
四、串口调试助手把采集的声音报警数据发送出来
五、串口调试助手软件下载
串口调试助手-keil5调试工具_stm32水位传感器资源-优快云文库
六、源代码
STM32单片机+声音传感器+OLED屏幕+蜂鸣器报警+声音报警数据发送到串口调试助手+源代码资源-优快云文库