CODE | Piezo Sounder Melody Player - Arduino Project 012

RonWang3 years ago (2023-08-17)电子编程 COD251

Rather than using the piezo to make annoying alarm sounds, why not use it to play a melody? You are going to get your Arduino to play the chorus of “Puff the Magic Dragon.” Leave the circuit exactly the same as in Project 11; you are just changing the code. 

项目 Project 12 - Piezo Sounder Melody Player 扬声器音乐演奏


/* Coding Ron Wang
   Aug.6th 2024
   Autaba support for coding hardware
 */
// Project 12 - Piezo Sounder Melody Player
#define NOTE_C3 131
#define NOTE_CS3 139
#define NOTE_D3 147
#define NOTE_DS3 156
#define NOTE_E3 165
#define NOTE_F3 175
#define NOTE_FS3 185
#define NOTE_G3 196
#define NOTE_GS3 208
#define NOTE_A3 220
#define NOTE_AS3 233
#define NOTE_B3 247
#define NOTE_C4 262
#define NOTE_CS4 277
#define NOTE_D4 294
#define NOTE_DS4 311
#define NOTE_E4 330
#define NOTE_F4 349
#define NOTE_FS4 370
#define NOTE_G4 392
#define NOTE_GS4 415
#define NOTE_A4 440
#define NOTE_AS4 466
#define NOTE_B4 494
#define WHOLE 1
#define HALF 0.5
#define QUARTER 0.25
#define EIGHTH 0.125
#define SIXTEENTH 0.0625
int tune[] = { NOTE_C4, NOTE_C4, NOTE_C4, NOTE_C4, NOTE_C4,
NOTE_B3, NOTE_G3, NOTE_A3, NOTE_C4, NOTE_C4, NOTE_G3, NOTE_G3,
NOTE_F3, NOTE_F3, NOTE_G3, NOTE_F3, NOTE_E3, NOTE_G3, NOTE_C4,
NOTE_C4, NOTE_C4, NOTE_C4, NOTE_A3, NOTE_B3, NOTE_C4, NOTE_D4};
float duration[] = { EIGHTH, QUARTER+EIGHTH, SIXTEENTH, QUARTER,
QUARTER, HALF, HALF, HALF, QUARTER, QUARTER, HALF+QUARTER, QUARTER,
QUARTER, QUARTER, QUARTER+EIGHTH, EIGHTH, QUARTER, QUARTER, QUARTER,
EIGHTH, EIGHTH, QUARTER, QUARTER, QUARTER, QUARTER, HALF+QUARTER};
int length;
void setup() {
 pinMode(8, OUTPUT);
 length = sizeof(tune) / sizeof(tune[0]);
}
void loop() {
 for (int x=0; x<length; x++) {
 tone(8, tune[x]);
 delay(1500 * duration[x]);
 noTone(8);
 }
 delay(5000);
}

arduino Piezo Sounder Alarm Circuit

 Piezo Sounder Alarm Schematic

Share with Friends:

Related Articles

HELLO RUBY Child Coding

HELLO RUBY Child Coding

HELLO RUBY儿童编程大冒险儿童编程思维启蒙读本3-6岁:《Hello Ruby儿童编程大冒险》English Version 英文网站  http://www.hellor…

How to Selection Soldering for your Maker

How to Selection Soldering for your Maker

如何选用合适的电络铁?初级电子制作与维修之工具选择电烙铁是我们电子制作和装配中,导线、延长线连接,电子元件的安装和拆卸的必备工具。尤其是在电器维修中也是最常用的工具。电烙铁的分类电络铁的分类方式很多,…

CODE | Liquid Crystal Displays - Hello World - Arduino Project 023

CODE | Liquid Crystal Displays - Hello World - Arduino Project 023

Before wiring the LCD screen to your Arduino board we suggest to solder a pin header strip to the 14…

CODE | Simple RFID Reader - Arduino Project 044

CODE | Simple RFID Reader - Arduino Project 044

Arduino Programming Basic -- Making an RFID ReaderAdvanced RFID with ArduinoRFID (Radio Frequency Id…

Guide to UL Wire Specifications & Standards

Guide to UL Wire Specifications & Standards

Who is UL ?The UL enterprise is a global private safety company headquartered in Northbrook, Illinoi…

CODE | Human Body Infrared Detector and Relay Light - Arduino Project 048

CODE | Human Body Infrared Detector and Relay Light - Arduino Project 048

Project 48 Human Body Infrared Detector and Relay LightThis Infrared Human Sensor referenc…

Post a Comment

Anonymous

Feel free to share your thoughts and opinions here.