久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 5933|回復: 1
打印 上一主題 下一主題
收起左側

Arduino使用pwm控制蜂鳴器的源程序

[復制鏈接]
跳轉到指定樓層
樓主
ID:220130 發表于 2018-8-27 23:12 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
arduino使用pwm控制蜂鳴器,分別播放1234567和小星星

Arduino源程序:
  1. int speakerPin = 2;
  2. char notes[] = "cdefgabC ";// 依照簡譜的順序,填入代表的音符,空白代表休止符
  3. unsigned long beats[] = {1,1,1,1,1,1,1,1}; // 決定每個音階的拍子,注意這里用 unsigned long 所以拍子只能是正整數
  4. int length = sizeof(notes); // 利用 sizeof(),算出總共要多少音符
  5. int tempo = 300;// 決定一拍多長,這里一拍 300 ms

  6. void setup() {
  7.   pinMode(speakerPin, OUTPUT);
  8. }

  9. void loop() {
  10.   for (int i = 0; i < length; i++) {      // 利用 for 來播放我們設定的歌曲,一個音一個音播放
  11.                                           // 如果是空白的話,不播放音樂
  12.     if (notes[i] == ' ') {
  13.       delay(beats[i] * tempo); // rest
  14.     } else {
  15.                                            // 呼叫 palyNote() 這個 function,將音符轉換成信號
  16.       playNote(speakerPin,notes[i], beats[i] * tempo);
  17.     }   
  18.     delay(tempo/10); // 每個音符之間的間隔
  19.   }
  20. }

  21. void playNote(int OutputPin, char note, unsigned long duration) {
  22.    // 音符字元與對應的頻率由兩個數組表示
  23.   char names[] = { 'c', 'd', 'e', 'f', 'g', 'a', 'b', 'C' };
  24.   int tones[] = { 261, 294, 330, 349, 392, 440, 494, 523 };
  25.   // 播放音符對應的頻率
  26.   for (int i = 0; i < 8; i++) {
  27.     if (names[i] == note) {
  28.       tone(OutputPin,tones[i], duration);
  29.   //下方的 delay() 及 noTone (),測試過後一定要有這兩行,整體的撥放出來的東西才不會亂掉,可能是因為 Arduino 送出tone () 頻率後會馬上接著執行下個指令,不會等聲音播完,導致撥出的聲音混合而亂掉
  30.       delay(duration);
  31.       noTone(OutputPin);
  32.     }
  33.   }
  34. }
復制代碼

所有資料51hei提供下載:
PWM_with_buzzer.rar (3 KB, 下載次數: 19)


評分

參與人數 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏1 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:917011 發表于 2021-5-15 11:57 | 只看該作者
所以這是pwm控制的嗎
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 一级黄色淫片 | 91视频18| 日韩精品视频中文字幕 | 欧美国产亚洲一区二区 | 亚洲精品视频二区 | 一区二区在线不卡 | 国产精品美女www | av免费网站在线观看 | 国产精品三级久久久久久电影 | 亚洲导航深夜福利涩涩屋 | 日韩免费一区 | 欧美日韩电影一区 | 国产成人一区二区 | 国产ts人妖系列高潮 | 国产成人在线播放 | 欧美日韩综合一区 | 午夜视频免费 | 久久精品久久久久久 | 中文字幕av一区二区三区 | 黑人巨大精品欧美一区二区免费 | 久国久产久精永久网页 | 女同久久另类99精品国产 | 日本午夜免费福利视频 | 亚洲狠狠爱 | 九九天堂网 | 久久亚洲视频网 | 户外露出一区二区三区 | 一区二区视频 | 成人精品国产一区二区4080 | 亚洲男女视频在线观看 | 久久夜视频| 国产精品视频999 | 日日操夜夜操天天操 | 最新中文字幕在线 | 国产日韩欧美一区二区 | 国产伊人精品 | 亚洲精品99 | 久久99精品国产 | 亚洲精品一区二区三区在线 | 日韩av免费看 | 久久高清精品 |