购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

2.2.2 模拟救护车警笛试验

1.硬件连接

本试验需要的主要硬件有蜂鸣器1个、面包板一块、导线若干。将控制板、面包板连接好,下载线插好,然后按照蜂鸣器的接法将蜂鸣器连接到数字7口上,连线完毕。接线图如图2-31所示。

图2-31 实际接线图

2.试验原理

蜂鸣器发出声音的时间间隔不同,频率就不同,所以发出的声音也不同。根据返音原理通过改变蜂鸣器发出声音的时间间隔,来发出不同种声音,来模拟各种声音。

本程序首先让蜂鸣器间隔1ms发出一种频率的声音,循环80次;接着让蜂鸣器间隔2ms发出另一种频率的声音,循环100次。

3.程序代码

本试验程序代码如下:

Int buzzer=7;//设置控制蜂鸣器的数字I/O脚

Void setup()

{

pinMoide(buzzer,OUTPUT);//设置数字I/O脚模式,OUTPUT为输出

}

Void loop()

{

unsigned char i,j;//定义变量

while(1)

{

for(i=0;i<80;i+=)//输出一个频率的声音

{

digitalWrite(buzzer,HIGH);//发声音

delay(1);//延时1ms

digitalWrite(buzzer,LOW);//不发声音

delay(1);//延时1ms

}

for(i=0;i<100;i+=)//输出另一个频率的声音

{

digitalWrite(buzzer,HIGH);//发声音

delay(2);//延时2ms

digitalWrite(buzzer,LOW);//不发声音

delay(2);//延时2ms

}

}

}

在loop()中用的while也是一个循环语句,一般形式为:

While(表达式)

语句

表达式是“循环条件”,语句是“循环体”。语义是“计算表达式的值”。当值为真(非0)时,执行循环体语句。其执行过程可用图2-32表示。

图2-32 While表达式执行过程

作用:实现“当型”循环。当“表达式”非0(真)时,执行“语句”。“语句”是被循环执行的程序,称为“循环体”。

4.下载程序

参照前面所讲的将程序下载到开发板中。

5.试验结果

将程序下载到试验板后可以听到,蜂鸣器发出救护车警笛声。掌握本程序后,大家可以在程序中自己改变时间间隔,调试出各种频率的声音。 bSa1v5secddc/1/eE//2inbRTDBO3oPZOgQQh8sjXc/xnDfEEwFHueVf7rHsUlMj

点击中间区域
呼出菜单
上一章
目录
下一章
×