目录
1.欣赏成果
Arduino 蜂窝器实验保姆级教程成果
2.安装对应软件
首先先安装对应软件Arduino
3.学习软件的使用
安装结束,我们进入首页选择我们对应的开发板Arduino UNO
选择之后就会将UNO开发板作为默认(UNO开发板适合初学者简单易上手)

并将开发板连接到电脑(注意:后面一定带有后缀,我前面买的盗版无法识别就没有后缀)
如果没有出现开发板(com)请检查链接器是否连接好或者开发板是否接触不良。
4.知识准备
pinMode(2, OUTPUT)是通过pinMode()函数,你可以将Arduino的引脚配置为以下三种模式:
输出(OUTPUT)模式
输入(INPUT)模式
输入上拉(INPUT_PULLUP)模式
tone()函数可以产生固定频率的PWM信号来驱动扬声器发声。
5.准备道具
●1 × Arduino UNO 板
●1 x 有源蜂鸣器

6.代码
const int buzzerPin = 3; //蜂鸣器模块连接引脚10
void setup() {
pinMode(buzzerPin,OUTPUT);
}
void loop() {
tone(buzzerPin,532);
delay(100);
tone(buzzerPin,587);
delay(100);
tone(buzzerPin,659);
delay(100);
}
接下验证 ,左上角的勾是验证符号

验证成功后就上传(勾旁边的箭头就是上传)

6.另一种代码
const int buzzerPin = 3;
// 蜂鸣器连接引脚
// 定义蜜蜂相关的音符频率
#define NOTE_BEE_LOW 440 // 蜜蜂低频音
#define NOTE_BEE_MID 880 // 蜜蜂中频音
#define NOTE_BEE_HIGH 1760 // 蜜蜂高频音
#define NOTE_ALARM 1047 // 警报音
void setup() {
pinMode(buzzerPin, OUTPUT);
Serial.begin(9600); // 初始化串口用于调试输出
Serial.println("蜜蜂声音实验开始...");
// 实验序列:依次演示不同的蜜蜂声音模式
experimentStartupSound();
delay(1000);
experimentNormalBeeSound(3);
//(重复3次)
delay(1000);
experimentDisturbedBeeSound();
//声音
delay(1000);
experimentSwarmSound();
delay(1000);
experimentQueenBeeCall();
}
void loop() {
// 循环执行完整实验序列
experimentNormalBeeSound(2);
delay(2000);
experimentDisturbedBeeSound();
delay(3000);
}
// 自定义函数:启动提示音
void experimentStartupSound() {
Serial.println("播放启动提示音");
playNote(NOTE_BEE_MID, 300);
delay(100);
playNote(NOTE_BEE_HIGH, 300);
noTone(buzzerPin);
}
// 自定义函数:正常蜜蜂声音
// 参数:repeat - 重复次数
// 启动提示音
// 正常蜜蜂声音
// 被干扰的蜜蜂
// 蜂群声音
// 蜂王召唤声
void experimentNormalBeeSound(int repeat) {
Serial.print("播放正常蜜蜂声音,重复");
Serial.print(repeat);
Serial.println("次");
for(int i = 0; i < repeat; i++){
// 模拟蜜蜂持续的嗡嗡声
for(int j = 0; j < 5; j++){
playNote(NOTE_BEE_LOW, 150);
playNote(NOTE_BEE_MID, 150);
}
delay(500); // 每次循环间隔
}
noTone(buzzerPin);
}
// 自定义函数:被干扰的蜜蜂声音
void experimentDisturbedBeeSound() {
Serial.println("播放被干扰的蜜蜂声音");
// 被干扰时声音更急促、音调更高
for(int i = 0; i < 10; i++){
playNote(NOTE_BEE_HIGH, 50);
playNote(NOTE_ALARM, 50);
}
noTone(buzzerPin);
}
// 自定义函数:蜂群声音
void experimentSwarmSound() {
Serial.println("播放蜂群声音");
// 模拟多个蜜蜂同时发声的效果
for(int i = 0; i < 8; i++){
playNote(NOTE_BEE_LOW + i*50, 200);
}
noTone(buzzerPin);
}
// 自定义函数:蜂王召唤声
void experimentQueenBeeCall() {
Serial.println("播放蜂王召唤声");
// 蜂王声音更低沉、节奏更慢
for(int i = 0; i < 3; i++){
playNote(NOTE_BEE_LOW - 100, 400);
delay(200);
}
noTone(buzzerPin);
}
// 基础工具函数:播放指定音符
// 参数:frequency - 频率,duration - 持续时间(毫秒)
void playNote(int frequency, int duration) {
tone(buzzerPin, frequency);
delay(duration);
}
这是进阶版代码
先认识一下其中函数
Serial.begin(9600);指的是将波特率指定在9600与电脑保持一致
这个代码是不断循环,用下面的函数注释上面的函数


noTone(buzzerPin);是当电流到达引脚3的时候停止
for(int i = 0; i < repeat; i++){
for(int j = 0; j < 5; j++){
外循环i从0加到repeat
内循环从0到4,外循环控制内循环循环几次
void playNote(int frequency, int duration) {
参数:frequency - 频率,duration - 持续时间(毫秒)
这是个总结函数,是全篇的频率和全篇的持续时间是这个函数的核心
playNote(NOTE_BEE_LOW, 150);后面的150是指音符的持续时间
可以用#define定义一个标识符来表示一个常量。其特点是:定 义的标识符不占内存,只是一个临时的符号,预编译后的这个符 号就不存在了。 #define又称宏定义,标识符为所定义的宏名,简称宏。宏名表 示的是一个常量,可以给变量赋值
7.心得
我认为这是个新的开始我也遇到了很多问题(见下面),但是当我成功做出来了后感到非常自豪,所以我认为在这个时代人类要不断走出自己的舒适圈,才能前进,如果觉得有帮助就请点一下赞,我火速更新下一章,我是FOX,励志做一个博学的萌新。
这一篇的代码都相对简单,也没有遇到什么问题,主要是后面进阶版代码的函数难,但是当你理解了,也会变得很简单


被折叠的 条评论
为什么被折叠?



