smythr
Published © GPL3+

Fun Halloween Costume

A delightful way to get into spooky season with a homemade costume to light up the night.

BeginnerFull instructions provided592
Fun Halloween Costume

Things used in this project

Story

Read more

Schematics

Diagram

A colored schematic for connecting each of the elements.

Code

Code

Arduino
This is the code to control the buzzer and the LEDs.
int switchPin = A9;
int buzzer_pin = A3;
int switchLED1 = A5;
int switchLED2 = 6;
int switchLED3 = A8;

struct MusicStruct {
  int A = 550;
  int As = 582;
  int B = 617;
  int C = 654;
  int Cs = 693;
  int D = 734;
  int Ds = 777;
  int E = 824;
  int F = 873;
  int Fs = 925;
  int G = 980;
  int Gs = 1003;
  int A2 = 1100;
  int A2s = 1165;
  int B2 = 1234;
  int C3 = 1308;
  int C3s = 1385;
  int D3 = 1555;
}Music;

struct LengthStruct {
  float half = 0.5;
  float one = 1.0;
  float one_half = 1.5;
  float two = 2.0;
  float two_half = 2.5;
}Length;

int tempo = 400;

void setup() {
  pinMode(buzzer_pin, OUTPUT);
  pinMode(switchPin, INPUT_PULLUP);

  pinMode(switchLED1, OUTPUT);
  pinMode(switchLED2, OUTPUT);
  pinMode(switchLED3, OUTPUT);
}

void setTone(int pin, int note, int duration) {
  tone(pin, note, duration);
  delay(duration);
  noTone(pin);
}

void loop() {
{
    int switchState;
  
  switchState = digitalRead(switchPin);
  if (switchState == LOW)  
  {
    digitalWrite(switchLED1,HIGH);
    digitalWrite(switchLED2,HIGH);
    digitalWrite(switchLED3,HIGH);
    
  }
  else
  {
    digitalWrite(switchLED1,LOW);
    digitalWrite(switchLED2,LOW);
    digitalWrite(switchLED3,LOW);
  }
  switchState = digitalRead(switchPin);
  if (switchState == LOW)
 {
  setTone(buzzer_pin, Music.B, tempo * Length.one);
  setTone(buzzer_pin, Music.E, tempo * Length.one_half);
  setTone(buzzer_pin, Music.G, tempo * Length.half);
  setTone(buzzer_pin, Music.F, tempo * Length.one);
  setTone(buzzer_pin, Music.E, tempo * Length.two);
  setTone(buzzer_pin, Music.B2, tempo * Length.one);
  setTone(buzzer_pin, Music.A2, tempo * Length.two_half);
  setTone(buzzer_pin, Music.Fs, tempo * Length.two_half);
  
  setTone(buzzer_pin, Music.E, tempo * Length.one_half);
  setTone(buzzer_pin, Music.G, tempo * Length.half);
  setTone(buzzer_pin, Music.F, tempo * Length.one);
  setTone(buzzer_pin, Music.Ds, tempo * Length.two);
  setTone(buzzer_pin, Music.F, tempo * Length.one);
  setTone(buzzer_pin, Music.B, tempo * Length.two_half);
  delay(1000);
}
else
{noTone(buzzer_pin);}
}}

Credits

smythr

smythr

1 project • 0 followers

Comments