做了之前的LED的实验,是不是感觉很无聊,接下来我们做一个有源蜂鸣器的报警器。
需要元器件:
有源蜂鸣器:
电路图:
因为模拟电路里面跟实际的有源蜂鸣器有区别,线路图如下(注意正负极哦):
输入代码如下:
float sinVal;
int toneVal;
int pin = 8; //定义引脚
void setup() {
pinMode(pin, OUTPUT);
}
void loop() {
for (int x = 0; x<180; x++) {
//当使用sin函数时,角度转换成弧度
sinVal = (sin(x*(3.1412 / 180)));
// 用sin函数值产生声音频率
toneVal = 2000+ (int(sinVal * 1000));
tone(pin, toneVal);
delay(2);
}
}
代码解释
首先,定义两个变量:
float sinVal;
int toneVal;
sinVal浮点变量存储正弦值,是声音产生高低变化。toneVal从s