扬声器又称喇叭、音响。是一种转换电子信号成为声音的换能器、电子组件,可以由一个或多个组成音响组。电视机,录音机里面的声音都是扬声器发出来的。

扬声器是由电磁铁、线圈、喇叭振膜组成。扬声器把电流频率转化为声音。物理学原理,当电流通过线圈产生电磁场,磁场的方向为右手法则。假设,扬声器播放C调,其频率为256Hz,即每秒振动256次,扬声器输出256Hz的交流电,每秒256次电流改变,发出C调频率。当电线圈与扬声器薄膜一起振动,推动周围的空气振动,扬声器由此产生声音。
人耳可以听到的声波的频率一般在20赫兹至20000赫兹之间,所以一般的扬声器都会把工作频率设定在这个范围内。

如何让扬声器发出一个声音。扬声器的工作频率在20-20K之间,那只要让Arduino输出这个频段内的频率就能让扬声器发出声音了。

# 部署

把扬声器SpeaKer的端子接到OSEPP UNO的2号引脚。

# 程序搭建

  • oseppBlock 积木知识

扬声器定义积木。
定义名称和端口号。

扬声器驱动积木。
扬声器播放c3音调的频率,
对应代码 tone(2, 131);

扬声器驱动积木。
扬声器停止播放声音,
对应代码noTone(2);

  • oseppBlock程序

  • Arduino程序
void setup()
{
    //speaker1
    pinMode(2, OUTPUT); //定义2号引脚为输出模式
}

void loop()
{
    tone(2, 131); //2号引脚输出131频率的波形
    delay(500);   //延时500毫秒
    noTone(2);    //停止声音
    delay(3000);  //延时3000毫秒
}
1
2
3
4
5
6
7
8
9
10
11
12
13

# 运行结果

上传代码后,扬声器就能发出c3音调声音0.5秒,然后暂停3秒。

# 操作视频