国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

Arduino簡單實例十二_蜂鳴器播放生日快樂

2019-11-08 01:58:54
字體:
來源:轉載
供稿:網友

1)       說明:

蜂鳴器是一種一體化結構的電子訊響器,采用直流電壓供電,廣泛應用于計算電子玩具、定時器等電子產品中作發聲器件。蜂鳴器分有源和無源。如果是有源的,單片機只要輸出高低電平就可以,如果是無源的,單片機就要輸出PWM波才可以讓蜂鳴器發聲。

2)       硬件:

5V有源蜂鳴器,Arduinouno,杜邦線

3)       連接:

正極連 ArduinoDigital 4負極連 Arduino GND

4)       --代碼:

int PIN_SPEAKER = 4;int length = 25;char notes[] = "ggagCbggagDCggGECbaffECDC";int beats[] = {1,1,2,2,2,4, 1,1,2,2,2,4, 1,1,2,2,2,2,2, 1,1,2,2,2,4,1};int tempo = 300; void playTone(int tone, int duration) {  for (long i = 0; i < duration * 1000L; i += tone * 2) {    digitalWrite(PIN_SPEAKER, HIGH);    delayMicroseconds(tone);    digitalWrite(PIN_SPEAKER, LOW);    delayMicroseconds(tone);  }} void playNote(char note, int duration) {  char names[] = {'c', 'd', 'e', 'f', 'g', 'a', 'b', 'C', 'D', 'E', 'F', 'G'};  int tones[] = {1915, 1700, 1519, 1432, 1275, 1136, 1014, 956, 853, 759, 716, 637, 568};   for (int i = 0; i < 12; i++) {    if (names[i] == note) {      Serial.PRint("value:");      Serial.println(note);      playTone(tones[i]*2, duration);    }  }} void setup() {  pinMode(PIN_SPEAKER, OUTPUT);} void loop() {  for (int i = 0; i < length; i++) {    if (notes[i] == ' ') {      delay(beats[i] * tempo);     } else {      playNote(notes[i], beats[i] * tempo);    }    delay(tempo / 2);   }}(請注意:因各廠商硬件不同,引腳位置可能有差異,具體請見硬件說明書)

 


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 赤峰市| 勐海县| 惠水县| 夏河县| 仪陇县| 德清县| 于都县| 石家庄市| 马尔康县| 屏边| 蚌埠市| 长葛市| 胶州市| 牙克石市| 中方县| 堆龙德庆县| 黎川县| 忻城县| 卓尼县| 绵阳市| 饶阳县| 九龙坡区| 重庆市| 莱西市| 来宾市| 凤台县| 环江| 安达市| 密山市| 平阳县| 灵山县| 麻阳| 忻城县| 昆山市| 太谷县| 广南县| 石嘴山市| 安岳县| 台北市| 汉寿县| 竹北市|