发帖
13 0 0

小安派Arduino外设系列-持续更新

Ject
金牌会员

13

主题

119

回帖

1385

积分

金牌会员

积分
1385
Ai-M61-Kit外设移植教程 2329 13 2023-12-8 21:40:23
本帖最后由 Ject 于 2023-12-9 13:51 编辑


同步更新
  1. https://github.com/huhututu0599/bl618_arduino_Test.git
复制代码

1、无源蜂鸣器
直接上代码
  1. #define buzzerPin 31 // 将蜂鸣器连接到Arduino的31号引脚

  2. // 定义音符频率
  3. #define NOTE_D4  294
  4. #define NOTE_E4  330
  5. #define NOTE_G4  392
  6. #define NOTE_A4  440
  7. #define NOTE_B4  494
  8. #define NOTE_D5  587
  9. #define NOTE_E5  659
  10. #define NOTE_G5  784

  11. // 定义音符时长
  12. #define NOTE_Q  500 // 四分音符
  13. #define NOTE_H  1000 // 半音符
  14. #define NOTE_W  2000 // 全音符

  15. void playNote(int noteFrequency, int noteDuration) {
  16.   int period = 1000000 / noteFrequency; // 计算音符频率的周期
  17.   int halfPeriod = period / 2; // 半个周期的时间

  18.   long numCycles = noteDuration * 1000L / period; // 计算循环次数,以便播放指定持续时间的音符

  19.   for (long i = 0; i < numCycles; i++) {
  20.     digitalWrite(buzzerPin, HIGH); // 输出高电平
  21.     delayMicroseconds(halfPeriod); // 延迟半个周期时间
  22.     digitalWrite(buzzerPin, LOW); // 输出低电平
  23.     delayMicroseconds(halfPeriod); // 延迟半个周期时间
  24.   }

  25.   delay(20); // 延迟一小段时间,留出缓冲
  26. }

  27. void setup() {
  28.   pinMode(buzzerPin, OUTPUT);
  29. }

  30. void loop() {

  31.   playNote(NOTE_G4, NOTE_H);
  32.   playNote(NOTE_A4, NOTE_Q);
  33.   playNote(NOTE_B4, NOTE_Q);
  34.   playNote(NOTE_D5, NOTE_H);
  35.   playNote(NOTE_B4, NOTE_Q);
  36.   playNote(NOTE_A4, NOTE_Q);
  37.   playNote(NOTE_G4, NOTE_H);
  38.   playNote(NOTE_E4, NOTE_H);
  39.   playNote(NOTE_D4, NOTE_Q);
  40.   playNote(NOTE_B4, NOTE_Q);

  41.   delay(3000); // 等待一段时间后重复播放
  42. }
复制代码
复制到arduino ide,连接无源蜂鸣器即可使用

──── 0人觉得很赞 ────

使用道具 举报

2023-12-8 21:53:49
6,66,666,6666666,6飞了,杰哥!
2023-12-8 22:25:50
杰哥,七哥这样水你帖子,你能忍?
2023-12-8 22:36:03
妖猊 发表于 2023-12-8 22:25
杰哥,七哥这样水你帖子,你能忍?

我给他点个反对
2023-12-9 08:54:51
杰哥6
2023-12-9 12:36:54
标题是不是少了个字母
2023-12-9 12:45:13
2023-12-9 12:57:55
学习了
2023-12-9 13:26:58
杰哥6
2023-12-9 13:51:05
WT_0213 发表于 2023-12-9 12:36
标题是不是少了个字母

哈哈,是的。
您需要登录后才可以回帖 立即登录
高级模式
12下一页
统计信息
  • 会员数: 28290 个
  • 话题数: 40267 篇