이하늘김찬희김지환허윤서gledel
Published © LGPL

Musical Cube

This project started from FabLab of Boilchon High School. Turning the button changes the sound.

BeginnerShowcase (no instructions)1.5 hours2,922
Musical Cube

Things used in this project

Hardware components

Arduino UNO
Arduino UNO
×2
Rotary potentiometer (generic)
Rotary potentiometer (generic)
×2
LED (generic)
LED (generic)
×13
Pushbutton switch 12mm
SparkFun Pushbutton switch 12mm
×2
Breadboard (generic)
Breadboard (generic)
×4
Jumper wires (generic)
Jumper wires (generic)
×1
Resistor 221 ohm
Resistor 221 ohm
×19
Speaker: 0.25W, 8 ohms
Speaker: 0.25W, 8 ohms
×2
AA Batteries
AA Batteries
×2
4xAA battery holder
4xAA battery holder
×2

Software apps and online services

Arduino Web Editor
Arduino Web Editor

Hand tools and fabrication machines

Laser cutter (generic)
Laser cutter (generic)

Story

Read more

Schematics

Musical Cube

It looks complicated but not difficult.

Code

Untitled file

Arduino
int Pot = A1;
int av;
int Switch = 5;
int SwitchState = 0;
int L7 = 6;
int L8 = 3;
int L9 = 2;
int L10 = 9;
int speaker = 8; // Breadboard 2
void setup() {
  Serial.begin(9600);
  pinMode (speaker, OUTPUT);
  pinMode (Switch, INPUT);
}
void loop() {
  av = analogRead(Pot);
  av = map(av, 0, 1023, 1, 5);
  Serial.print(av);
  Serial.println(SwitchState); 
  SwitchState = digitalRead(Switch);
   if(av == 1){
    digitalWrite(L7, HIGH);
    digitalWrite(L8, LOW);
    digitalWrite(L9, LOW);
    digitalWrite(L10, LOW);
  }else if(av == 2){
    digitalWrite(L7, LOW);
    digitalWrite(L8, HIGH);
    digitalWrite(L9, LOW);
    digitalWrite(L10, LOW);
  }
  else if(av == 3){
    digitalWrite(L7, LOW);
    digitalWrite(L8, LOW);
    digitalWrite(L9, HIGH);
    digitalWrite(L10, LOW);
  }
  else if(av == 4){
    digitalWrite(L7, LOW);
    digitalWrite(L8, LOW);
    digitalWrite(L9, LOW);
    digitalWrite(L10, HIGH);
  }
if(SwitchState == 1){
  if(av == 1){
    tone(speaker, 2979, 10);
  }else if(av == 2){
    tone(speaker, 3363, 10);
  }else if(av == 3){
    tone(speaker, 3747, 10);
  }else if(av == 4){
    tone(speaker, 4003, 10);
  }
}
} 

Untitled file

Arduino
int Pot = A1;
int av;
int Switch = 5;
int SwitchState = 0;
int L7 = 6;
int L8 = 3;
int L9 = 2;
int L10 = 9;
int speaker = 8; // Breadboard 2
void setup() {
  Serial.begin(9600);
  pinMode (speaker, OUTPUT);
  pinMode (Switch, INPUT);
}
void loop() {
  av = analogRead(Pot);
  av = map(av, 0, 1023, 1, 5);
  Serial.print(av);
  Serial.println(SwitchState); 
  SwitchState = digitalRead(Switch);
   if(av == 1){
    digitalWrite(L7, HIGH);
    digitalWrite(L8, LOW);
    digitalWrite(L9, LOW);
    digitalWrite(L10, LOW);
  }else if(av == 2){
    digitalWrite(L7, LOW);
    digitalWrite(L8, HIGH);
    digitalWrite(L9, LOW);
    digitalWrite(L10, LOW);
  }
  else if(av == 3){
    digitalWrite(L7, LOW);
    digitalWrite(L8, LOW);
    digitalWrite(L9, HIGH);
    digitalWrite(L10, LOW);
  }
  else if(av == 4){
    digitalWrite(L7, LOW);
    digitalWrite(L8, LOW);
    digitalWrite(L9, LOW);
    digitalWrite(L10, HIGH);
  }
if(SwitchState == 1){
  if(av == 1){
    tone(speaker, 2851, 10);
  }else if(av == 2){
    tone(speaker, 3235, 10);
  }else if(av == 3){
    tone(speaker, 3491, 10);
  }else if(av == 4){
    tone(speaker, 3747, 10);
  }
}
} 

Credits

이하늘
5 projects • 3 followers
김찬희
0 projects • 0 followers
봉일천고 10316 김찬희
김지환
0 projects • 0 followers
adsf
허윤서
0 projects • 0 followers
gledel
100 projects • 116 followers
Looking back on my childhood, I was happy when I was making something and I was proud of myself. "Making is instinct!"

Comments