Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //Pin number declaration
- int pin_PIEZO = 12; //Buzz +
- int pin_LED[3] = {0,1,2}; //RGB LED +
- int pin_SW = 7; //Switch +
- int pin_GND1 = 3; //RGB LED -
- int pin_GND2 = 8; //Switch -
- int scale_data[9] = {-255,130,146,164,174,195,220,246,261}; //Buzz Soundnum
- //Set Input and Output
- void setup(){
- pinMode(pin_PIEZO, OUTPUT); //Set to Buzz Output
- pinMode(pin_SW,INPUT_PULLUP); //Set to Switch Intput, LOW = ON , HIGH = OFF
- pinMode(pin_LED[0], OUTPUT); //Set to RED Output
- pinMode(pin_LED[1], OUTPUT); //Set to GREEN Output
- pinMode(pin_LED[2], OUTPUT); //Set to BLUE Output
- pinMode(pin_GND1, OUTPUT); digitalWrite(pin_GND1, LOW); // RGB LED - Set to Ground value
- pinMode(pin_GND2, OUTPUT); digitalWrite(pin_GND2, LOW); //Switch - Set to Ground value
- }
- //Set RGB LED Control
- void LED_control(uint8_t da)
- {
- digitalWrite(pin_LED[0], da & 0x01);
- da >>= 1;
- digitalWrite(pin_LED[1], da & 0x01);
- da >>= 1;
- digitalWrite(pin_LED[2], da & 0x01);
- }
- //Set RGB LED - Color Name
- #define OFF 0
- #define RED 0x01
- #define GREEN 0x02
- #define BLUE 0x04
- //Program Loop
- void loop(){
- //digitalRead(pin_SW) -> Read Switch Digital Signal
- //When pin_SW is turn ON.
- if(digitalRead(pin_SW) == LOW)
- {
- //RGB LED In turn
- LED_control(RED);delay(1000); LED_control(GREEN);delay(1000); LED_control(BLUE);delay(1000);LED_control(0);delay(1000);
- //Song : Mary had a little lamb
- //tone(pin_PIEZO, scale_date[num];dealay(sec);noTone(pin_PIEZO);delay(125);LED_control(num);
- tone(pin_PIEZO, scale_data[3]);delay(125);noTone(pin_PIEZO);delay(125);LED_control(RED);
- tone(pin_PIEZO, scale_data[2]);delay(125);noTone(pin_PIEZO);delay(125);LED_control(GREEN);
- tone(pin_PIEZO, scale_data[1]);delay(125);noTone(pin_PIEZO);delay(125);LED_control(BLUE);
- tone(pin_PIEZO, scale_data[2]);delay(125);noTone(pin_PIEZO);delay(125);LED_control(RED);
- tone(pin_PIEZO, scale_data[3]);delay(125);noTone(pin_PIEZO);delay(125);LED_control(GREEN);
- tone(pin_PIEZO, scale_data[3]);delay(125);noTone(pin_PIEZO);delay(125);LED_control(BLUE);
- tone(pin_PIEZO, scale_data[3]);delay(250);noTone(pin_PIEZO);delay(250);LED_control(RED);
- tone(pin_PIEZO, scale_data[2]);delay(125);noTone(pin_PIEZO);delay(125);LED_control(GREEN);
- tone(pin_PIEZO, scale_data[2]);delay(125);noTone(pin_PIEZO);delay(125);LED_control(BLUE);
- tone(pin_PIEZO, scale_data[2]);delay(250);noTone(pin_PIEZO);delay(250);LED_control(RED);
- tone(pin_PIEZO, scale_data[3]);delay(125);noTone(pin_PIEZO);delay(125);LED_control(GREEN);
- tone(pin_PIEZO, scale_data[5]);delay(125);noTone(pin_PIEZO);delay(125);LED_control(BLUE);
- tone(pin_PIEZO, scale_data[5]);delay(250);noTone(pin_PIEZO);delay(250);LED_control(RED);
- tone(pin_PIEZO, scale_data[3]);delay(187.5);noTone(pin_PIEZO);delay(187.5);LED_control(GREEN);
- tone(pin_PIEZO, scale_data[2]);delay(62.5);noTone(pin_PIEZO);delay(62.5);LED_control(BLUE);
- tone(pin_PIEZO, scale_data[1]);delay(125);noTone(pin_PIEZO);delay(125);LED_control(RED);
- tone(pin_PIEZO, scale_data[2]);delay(125);noTone(pin_PIEZO);delay(125);LED_control(GREEN);
- tone(pin_PIEZO, scale_data[3]);delay(125);noTone(pin_PIEZO);delay(125);LED_control(BLUE);
- tone(pin_PIEZO, scale_data[3]);delay(125);noTone(pin_PIEZO);delay(125);LED_control(RED);
- tone(pin_PIEZO, scale_data[3]);delay(250);noTone(pin_PIEZO);delay(250);LED_control(GREEN);
- tone(pin_PIEZO, scale_data[2]);delay(125);noTone(pin_PIEZO);delay(125);LED_control(BLUE);
- tone(pin_PIEZO, scale_data[2]);delay(125);noTone(pin_PIEZO);delay(125);LED_control(RED);
- tone(pin_PIEZO, scale_data[3]);delay(187.5);noTone(pin_PIEZO);delay(187.5);LED_control(GREEN);
- tone(pin_PIEZO, scale_data[2]);delay(62.5);noTone(pin_PIEZO);delay(62.5); LED_control(BLUE);
- tone(pin_PIEZO, scale_data[1]);delay(500);noTone(pin_PIEZO);delay(500);LED_control(0);
- }
- //When pin_SW is turn OFF.
- else{
- digitalWrite(pin_LED, LOW);
- digitalWrite(pin_PIEZO, LOW);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement