好玩的tone();函数,用tone();函数模拟警报声-Arduino中文社区 - Powered by Discuz! Archiver

月光啪啪 发表于 2022-3-7 21:30

好玩的tone();函数,用tone();函数模拟警报声

tone();函数是arduino驱动蜂鸣器的函数,可以用这个函数模拟一下警报的声音。警报的声音其实就是声音频率从低到高,再从高到底的反复变化。
最好找一个扬声器,效果比较明显。硬件接线我在代码注释里说明了,讲究的最好串联一个100欧姆的电阻做限流用。
#define pin D2//我用的是ESP8266开发板,用D2这个引脚当做输出

void setup() {
Serial.begin(115200);//打开串口
pinMode(pin,OUTPUT); // 设置8266开发板的D2脚为输出,用扬声器效果比蜂鸣器好
                      //扬声器一端接esp8266开发板D2脚,另一端接8266开发板的GND
}                     // 用esp8266开发板的特别注意,一定不要接D3脚。因为D3脚接地是烧写固件模式

void loop() {
for(int i=100;i<=4000;i=i+10)//这边i最高频率我设置为4000Hz,因为再高了人耳听的就不明显了
{
tone(pin,i);
   Serial.print("频率是:"); Serial.print(i);Serial.println("Hz");
   delay(20);
}
for(int l=4000;l>=130;l=l-10)
{
tone(pin,l);
   Serial.print("频率是:"); Serial.print(l);Serial.println("Hz");
   delay(8);
}
}



ws9528 发表于 2022-3-19 21:48

有时间玩一下
页: [1]
查看完整版本: 好玩的tone();函数,用tone();函数模拟警报声