Behold the most annoying sounds ever made. So users can input a series of characters up to 100, those have to be music notes. When they enter 0 the songs starts looping. They then have two controls to adjust the frequency and notes that are being played. There is a bar graph that displays the frequency rate and a display that shows which note is being played.
( Sorry for my video being upside down, I had to zip tie my phone to a tripod.)
int speakerPin = 2;
int n = 0;
int h;
char song[100];
int i = 0;
int j = 1;
int play = 0;
char x = 0;
int count;
float freq;
float tune;
char D;
char E;
char F;
char G;
char A;
char B;
char C;
int d1d = 31;
int d2d = 33;
int d3d = 35;
int d4d = 37;
int d5d = 39;
int d6d = 41;
int d7d = 43;
int d8d = 45;
int d9d = 47;
int d10d = 49;
#define A 22
#define B 9
#define C 50
#define D 3
#define E 34
#define F 5
#define G 6
void char_A()
{
digitalWrite(D, HIGH);
digitalWrite(E, LOW);
digitalWrite(F, LOW);
digitalWrite(G, LOW);
digitalWrite(A, LOW);
digitalWrite(B, LOW);
digitalWrite(C, LOW);
}
void char_non()
{
digitalWrite(D, HIGH);
digitalWrite(E, HIGH);
digitalWrite(F, HIGH);
digitalWrite(G, HIGH);
digitalWrite(A, HIGH);
digitalWrite(B, HIGH);
digitalWrite(C, HIGH);
}
void char_B()
{
//Displays B
digitalWrite(D, LOW);
digitalWrite(E, LOW);
digitalWrite(F, LOW);
digitalWrite(G, LOW);
digitalWrite(A, HIGH);
digitalWrite(B, HIGH);
digitalWrite(C, LOW);
}
void char_C()
{
//Displays C
digitalWrite(D, LOW);
digitalWrite(E, LOW);
digitalWrite(F, HIGH);
digitalWrite(G, LOW);
digitalWrite(A, LOW);
digitalWrite(B, HIGH);
digitalWrite(C, HIGH);
}
void char_D()
{
//Displays D
digitalWrite(D, LOW);
digitalWrite(E, LOW);
digitalWrite(F, LOW);
digitalWrite(G, HIGH);
digitalWrite(A, HIGH);
digitalWrite(B, LOW);
digitalWrite(C, LOW);
}
void char_E()
{
//Displays E
digitalWrite(D, LOW);
digitalWrite(E, LOW);
digitalWrite(F, LOW);
digitalWrite(G, LOW);
digitalWrite(A, LOW);
digitalWrite(B, HIGH);
digitalWrite(C, HIGH);
}
void char_F()
{
//Displays F
digitalWrite(D, HIGH);
digitalWrite(E, LOW);
digitalWrite(F, LOW);
digitalWrite(G, LOW);
digitalWrite(A, LOW);
digitalWrite(B, HIGH);
digitalWrite(C, HIGH);
}
void char_G()
{
digitalWrite(D, LOW);
digitalWrite(E, LOW);
digitalWrite(F, LOW);
digitalWrite(G, HIGH);
digitalWrite(A, LOW);
digitalWrite(B, LOW);
digitalWrite(C, LOW);
}
void zero()
{
//Displays 0
digitalWrite(D, LOW);
digitalWrite(E, LOW);
digitalWrite(F, LOW);
digitalWrite(G, LOW);
digitalWrite(A, LOW);
digitalWrite(B, LOW);
digitalWrite(C, LOW);
}
void char_OFF() {
digitalWrite(d1d, LOW);
digitalWrite(d2d, LOW);
digitalWrite(d3d, LOW);
digitalWrite(d4d, LOW);
digitalWrite(d5d, LOW);
digitalWrite(d6d, LOW);
digitalWrite(d7d, LOW);
digitalWrite(d8d, LOW);
digitalWrite(d9d, LOW);
digitalWrite(d10d, LOW);
}
void char_ONE() {
digitalWrite(d1d, HIGH);
digitalWrite(d2d, LOW);
digitalWrite(d3d, LOW);
digitalWrite(d4d, LOW);
digitalWrite(d5d, LOW);
digitalWrite(d6d, LOW);
digitalWrite(d7d, LOW);
digitalWrite(d8d, LOW);
digitalWrite(d9d, LOW);
digitalWrite(d10d, LOW);
}
void char_TWO() {
digitalWrite(d1d, HIGH);
digitalWrite(d2d, HIGH);
digitalWrite(d3d, LOW);
digitalWrite(d4d, LOW);
digitalWrite(d5d, LOW);
digitalWrite(d6d, LOW);
digitalWrite(d7d, LOW);
digitalWrite(d8d, LOW);
digitalWrite(d9d, LOW);
digitalWrite(d10d, LOW);
}
void char_THREE() {
digitalWrite(d1d, HIGH);
digitalWrite(d2d, HIGH);
digitalWrite(d3d, HIGH);
digitalWrite(d4d, LOW);
digitalWrite(d5d, LOW);
digitalWrite(d6d, LOW);
digitalWrite(d7d, LOW);
digitalWrite(d8d, LOW);
digitalWrite(d9d, LOW);
digitalWrite(d10d, LOW);
}
void char_FOUR() {
digitalWrite(d1d, HIGH);
digitalWrite(d2d, HIGH);
digitalWrite(d3d, HIGH);
digitalWrite(d4d, HIGH);
digitalWrite(d5d, LOW);
digitalWrite(d6d, LOW);
digitalWrite(d7d, LOW);
digitalWrite(d8d, LOW);
digitalWrite(d9d, LOW);
digitalWrite(d10d, LOW);
}
void char_FIVE() {
digitalWrite(d1d, HIGH);
digitalWrite(d2d, HIGH);
digitalWrite(d3d, HIGH);
digitalWrite(d4d, HIGH);
digitalWrite(d5d, HIGH);
digitalWrite(d6d, LOW);
digitalWrite(d7d, LOW);
digitalWrite(d8d, LOW);
digitalWrite(d9d, LOW);
digitalWrite(d10d, LOW);
}
void char_SIX() {
digitalWrite(d1d, HIGH);
digitalWrite(d2d, HIGH);
digitalWrite(d3d, HIGH);
digitalWrite(d4d, HIGH);
digitalWrite(d5d, HIGH);
digitalWrite(d6d, HIGH);
digitalWrite(d7d, LOW);
digitalWrite(d8d, LOW);
digitalWrite(d9d, LOW);
digitalWrite(d10d, LOW);
}
void char_SEVEN() {
digitalWrite(d1d, HIGH);
digitalWrite(d2d, HIGH);
digitalWrite(d3d, HIGH);
digitalWrite(d4d, HIGH);
digitalWrite(d5d, HIGH);
digitalWrite(d6d, HIGH);
digitalWrite(d7d, HIGH);
digitalWrite(d8d, LOW);
digitalWrite(d9d, LOW);
digitalWrite(d10d, LOW);
}
void char_EIGHT() {
digitalWrite(d1d, HIGH);
digitalWrite(d2d, HIGH);
digitalWrite(d3d, HIGH);
digitalWrite(d4d, HIGH);
digitalWrite(d5d, HIGH);
digitalWrite(d6d, HIGH);
digitalWrite(d7d, HIGH);
digitalWrite(d8d, HIGH);
digitalWrite(d9d, LOW);
digitalWrite(d10d, LOW);
}
void char_NINE() {
digitalWrite(d1d, HIGH);
digitalWrite(d2d, HIGH);
digitalWrite(d3d, HIGH);
digitalWrite(d4d, HIGH);
digitalWrite(d5d, HIGH);
digitalWrite(d6d, HIGH);
digitalWrite(d7d, HIGH);
digitalWrite(d8d, HIGH);
digitalWrite(d9d, HIGH);
digitalWrite(d10d, LOW);
}
void char_TEN() {
digitalWrite(d1d, HIGH);
digitalWrite(d2d, HIGH);
digitalWrite(d3d, HIGH);
digitalWrite(d4d, HIGH);
digitalWrite(d5d, HIGH);
digitalWrite(d6d, HIGH);
digitalWrite(d7d, HIGH);
digitalWrite(d8d, HIGH);
digitalWrite(d9d, HIGH);
digitalWrite(d10d, HIGH);
}
void boot() {
char_ONE();
delay(30);
char_TWO();
delay(30);
char_THREE();
delay(30);
char_FOUR();
delay(30);
char_FIVE();
delay(30);
char_SIX();
delay(30);
char_SEVEN();
delay(30);
char_EIGHT();
delay(30);
char_NINE();
delay(30);
char_TEN();
}
int frequency(char note) {
char names[] = { 'c', 'd', 'e', 'f', 'g', 'a', 'b', 'C' , ' '};
int frequencies[] = {262, 294, 330, 349, 392, 440, 494, 523, 000};
for (h = 0; h < 100; h++) {
if (names[h] == note)
{
return (frequencies[h]);
}
}
}
void led() {
if (song[j] == 'a') {
char_A();
}
if (song[j] == 'b') {
char_B();
}
if (song[j] == 'C') {
char_C();
}
if (song[j] == 'c') {
char_C();
}
if (song[j] == 'd') {
char_D();
}
if (song[j] == 'e') {
char_E();
}
if (song[j] == 'f') {
char_F();
}
if (song[j] == 'g') {
char_G();
} if (song[j] == ' ') {
char_non();
}
}
void setup() {
pinMode(A, OUTPUT);
pinMode(B, OUTPUT);
pinMode(C, OUTPUT);
pinMode(D, OUTPUT);
pinMode(E, OUTPUT);
pinMode(F, OUTPUT);
pinMode(G, OUTPUT);
pinMode(d1d, OUTPUT);
pinMode(d2d, OUTPUT);
pinMode(d3d, OUTPUT);
pinMode(d4d, OUTPUT);
pinMode(d5d, OUTPUT);
pinMode(d6d, OUTPUT);
pinMode(d7d, OUTPUT);
pinMode(d8d, OUTPUT);
pinMode(d9d, OUTPUT);
pinMode(d10d, OUTPUT);
pinMode(speakerPin, OUTPUT);
Serial.begin(9600);
Serial.println("type c, d, e, f, g, a, b, c, or the space bar to create music, type 0 to start song");
boot();
}
void loop() {
for (i = 0; play == 0 && i < 100; ) {
while (Serial.available() > 0 ) {
x = Serial.read();
if ( x == 'a' || x == 'b' || x == 'c' || x == 'd' || x == 'g' || x == 'f' || x == 'e' || x == 'C' || x == ' ') {
song[i] = x;
i++;
led();
}
if (x == '0') {
play = 1;
j = 0;
count = i;
}
}
}
for ( j = 0; play == 1 && j < count; ) {
while (Serial.available() > 0 ) {
x = Serial.read();
}
if (x != '1') {
float value = analogRead(A7);
float freq = (value / 256) ;
float tune = analogRead(A6);
float tuned = tune / 512;
float poop = ((value + tune) / 2) / 1024;
Serial.println(song[j]);
led();
tone(speakerPin, (frequency(song[j])*tuned), (150 * freq));
delay(140);
if (poop == 0) {
char_OFF();
}
if (poop <= .10) {
char_ONE();
}
if (poop >= .10 && poop <= .2) {
char_TWO();
}
if (poop >= .20 && poop <= .3) {
char_THREE();
}
if (poop >= .30 && poop <= .4) {
char_FOUR();
}
if (poop >= .40 && poop <= .5) {
char_FIVE();
}
if (poop >= .50 && poop <= .6) {
char_SIX();
}
if (poop >= .70 && poop <= .8) {
char_SEVEN();
}
if (poop >= .80 && poop <= .9) {
char_EIGHT();
}
if (poop >= .90 && poop <= .95) {
char_NINE();
}
if (poop >= .95 && poop <= 1.1) {
char_TEN();
}
j++;
}
if (x == '1') {
play = 0;
}
}
}
( Sorry for my video being upside down, I had to zip tie my phone to a tripod.)
int speakerPin = 2;
int n = 0;
int h;
char song[100];
int i = 0;
int j = 1;
int play = 0;
char x = 0;
int count;
float freq;
float tune;
char D;
char E;
char F;
char G;
char A;
char B;
char C;
int d1d = 31;
int d2d = 33;
int d3d = 35;
int d4d = 37;
int d5d = 39;
int d6d = 41;
int d7d = 43;
int d8d = 45;
int d9d = 47;
int d10d = 49;
#define A 22
#define B 9
#define C 50
#define D 3
#define E 34
#define F 5
#define G 6
void char_A()
{
digitalWrite(D, HIGH);
digitalWrite(E, LOW);
digitalWrite(F, LOW);
digitalWrite(G, LOW);
digitalWrite(A, LOW);
digitalWrite(B, LOW);
digitalWrite(C, LOW);
}
void char_non()
{
digitalWrite(D, HIGH);
digitalWrite(E, HIGH);
digitalWrite(F, HIGH);
digitalWrite(G, HIGH);
digitalWrite(A, HIGH);
digitalWrite(B, HIGH);
digitalWrite(C, HIGH);
}
void char_B()
{
//Displays B
digitalWrite(D, LOW);
digitalWrite(E, LOW);
digitalWrite(F, LOW);
digitalWrite(G, LOW);
digitalWrite(A, HIGH);
digitalWrite(B, HIGH);
digitalWrite(C, LOW);
}
void char_C()
{
//Displays C
digitalWrite(D, LOW);
digitalWrite(E, LOW);
digitalWrite(F, HIGH);
digitalWrite(G, LOW);
digitalWrite(A, LOW);
digitalWrite(B, HIGH);
digitalWrite(C, HIGH);
}
void char_D()
{
//Displays D
digitalWrite(D, LOW);
digitalWrite(E, LOW);
digitalWrite(F, LOW);
digitalWrite(G, HIGH);
digitalWrite(A, HIGH);
digitalWrite(B, LOW);
digitalWrite(C, LOW);
}
void char_E()
{
//Displays E
digitalWrite(D, LOW);
digitalWrite(E, LOW);
digitalWrite(F, LOW);
digitalWrite(G, LOW);
digitalWrite(A, LOW);
digitalWrite(B, HIGH);
digitalWrite(C, HIGH);
}
void char_F()
{
//Displays F
digitalWrite(D, HIGH);
digitalWrite(E, LOW);
digitalWrite(F, LOW);
digitalWrite(G, LOW);
digitalWrite(A, LOW);
digitalWrite(B, HIGH);
digitalWrite(C, HIGH);
}
void char_G()
{
digitalWrite(D, LOW);
digitalWrite(E, LOW);
digitalWrite(F, LOW);
digitalWrite(G, HIGH);
digitalWrite(A, LOW);
digitalWrite(B, LOW);
digitalWrite(C, LOW);
}
void zero()
{
//Displays 0
digitalWrite(D, LOW);
digitalWrite(E, LOW);
digitalWrite(F, LOW);
digitalWrite(G, LOW);
digitalWrite(A, LOW);
digitalWrite(B, LOW);
digitalWrite(C, LOW);
}
void char_OFF() {
digitalWrite(d1d, LOW);
digitalWrite(d2d, LOW);
digitalWrite(d3d, LOW);
digitalWrite(d4d, LOW);
digitalWrite(d5d, LOW);
digitalWrite(d6d, LOW);
digitalWrite(d7d, LOW);
digitalWrite(d8d, LOW);
digitalWrite(d9d, LOW);
digitalWrite(d10d, LOW);
}
void char_ONE() {
digitalWrite(d1d, HIGH);
digitalWrite(d2d, LOW);
digitalWrite(d3d, LOW);
digitalWrite(d4d, LOW);
digitalWrite(d5d, LOW);
digitalWrite(d6d, LOW);
digitalWrite(d7d, LOW);
digitalWrite(d8d, LOW);
digitalWrite(d9d, LOW);
digitalWrite(d10d, LOW);
}
void char_TWO() {
digitalWrite(d1d, HIGH);
digitalWrite(d2d, HIGH);
digitalWrite(d3d, LOW);
digitalWrite(d4d, LOW);
digitalWrite(d5d, LOW);
digitalWrite(d6d, LOW);
digitalWrite(d7d, LOW);
digitalWrite(d8d, LOW);
digitalWrite(d9d, LOW);
digitalWrite(d10d, LOW);
}
void char_THREE() {
digitalWrite(d1d, HIGH);
digitalWrite(d2d, HIGH);
digitalWrite(d3d, HIGH);
digitalWrite(d4d, LOW);
digitalWrite(d5d, LOW);
digitalWrite(d6d, LOW);
digitalWrite(d7d, LOW);
digitalWrite(d8d, LOW);
digitalWrite(d9d, LOW);
digitalWrite(d10d, LOW);
}
void char_FOUR() {
digitalWrite(d1d, HIGH);
digitalWrite(d2d, HIGH);
digitalWrite(d3d, HIGH);
digitalWrite(d4d, HIGH);
digitalWrite(d5d, LOW);
digitalWrite(d6d, LOW);
digitalWrite(d7d, LOW);
digitalWrite(d8d, LOW);
digitalWrite(d9d, LOW);
digitalWrite(d10d, LOW);
}
void char_FIVE() {
digitalWrite(d1d, HIGH);
digitalWrite(d2d, HIGH);
digitalWrite(d3d, HIGH);
digitalWrite(d4d, HIGH);
digitalWrite(d5d, HIGH);
digitalWrite(d6d, LOW);
digitalWrite(d7d, LOW);
digitalWrite(d8d, LOW);
digitalWrite(d9d, LOW);
digitalWrite(d10d, LOW);
}
void char_SIX() {
digitalWrite(d1d, HIGH);
digitalWrite(d2d, HIGH);
digitalWrite(d3d, HIGH);
digitalWrite(d4d, HIGH);
digitalWrite(d5d, HIGH);
digitalWrite(d6d, HIGH);
digitalWrite(d7d, LOW);
digitalWrite(d8d, LOW);
digitalWrite(d9d, LOW);
digitalWrite(d10d, LOW);
}
void char_SEVEN() {
digitalWrite(d1d, HIGH);
digitalWrite(d2d, HIGH);
digitalWrite(d3d, HIGH);
digitalWrite(d4d, HIGH);
digitalWrite(d5d, HIGH);
digitalWrite(d6d, HIGH);
digitalWrite(d7d, HIGH);
digitalWrite(d8d, LOW);
digitalWrite(d9d, LOW);
digitalWrite(d10d, LOW);
}
void char_EIGHT() {
digitalWrite(d1d, HIGH);
digitalWrite(d2d, HIGH);
digitalWrite(d3d, HIGH);
digitalWrite(d4d, HIGH);
digitalWrite(d5d, HIGH);
digitalWrite(d6d, HIGH);
digitalWrite(d7d, HIGH);
digitalWrite(d8d, HIGH);
digitalWrite(d9d, LOW);
digitalWrite(d10d, LOW);
}
void char_NINE() {
digitalWrite(d1d, HIGH);
digitalWrite(d2d, HIGH);
digitalWrite(d3d, HIGH);
digitalWrite(d4d, HIGH);
digitalWrite(d5d, HIGH);
digitalWrite(d6d, HIGH);
digitalWrite(d7d, HIGH);
digitalWrite(d8d, HIGH);
digitalWrite(d9d, HIGH);
digitalWrite(d10d, LOW);
}
void char_TEN() {
digitalWrite(d1d, HIGH);
digitalWrite(d2d, HIGH);
digitalWrite(d3d, HIGH);
digitalWrite(d4d, HIGH);
digitalWrite(d5d, HIGH);
digitalWrite(d6d, HIGH);
digitalWrite(d7d, HIGH);
digitalWrite(d8d, HIGH);
digitalWrite(d9d, HIGH);
digitalWrite(d10d, HIGH);
}
void boot() {
char_ONE();
delay(30);
char_TWO();
delay(30);
char_THREE();
delay(30);
char_FOUR();
delay(30);
char_FIVE();
delay(30);
char_SIX();
delay(30);
char_SEVEN();
delay(30);
char_EIGHT();
delay(30);
char_NINE();
delay(30);
char_TEN();
}
int frequency(char note) {
char names[] = { 'c', 'd', 'e', 'f', 'g', 'a', 'b', 'C' , ' '};
int frequencies[] = {262, 294, 330, 349, 392, 440, 494, 523, 000};
for (h = 0; h < 100; h++) {
if (names[h] == note)
{
return (frequencies[h]);
}
}
}
void led() {
if (song[j] == 'a') {
char_A();
}
if (song[j] == 'b') {
char_B();
}
if (song[j] == 'C') {
char_C();
}
if (song[j] == 'c') {
char_C();
}
if (song[j] == 'd') {
char_D();
}
if (song[j] == 'e') {
char_E();
}
if (song[j] == 'f') {
char_F();
}
if (song[j] == 'g') {
char_G();
} if (song[j] == ' ') {
char_non();
}
}
void setup() {
pinMode(A, OUTPUT);
pinMode(B, OUTPUT);
pinMode(C, OUTPUT);
pinMode(D, OUTPUT);
pinMode(E, OUTPUT);
pinMode(F, OUTPUT);
pinMode(G, OUTPUT);
pinMode(d1d, OUTPUT);
pinMode(d2d, OUTPUT);
pinMode(d3d, OUTPUT);
pinMode(d4d, OUTPUT);
pinMode(d5d, OUTPUT);
pinMode(d6d, OUTPUT);
pinMode(d7d, OUTPUT);
pinMode(d8d, OUTPUT);
pinMode(d9d, OUTPUT);
pinMode(d10d, OUTPUT);
pinMode(speakerPin, OUTPUT);
Serial.begin(9600);
Serial.println("type c, d, e, f, g, a, b, c, or the space bar to create music, type 0 to start song");
boot();
}
void loop() {
for (i = 0; play == 0 && i < 100; ) {
while (Serial.available() > 0 ) {
x = Serial.read();
if ( x == 'a' || x == 'b' || x == 'c' || x == 'd' || x == 'g' || x == 'f' || x == 'e' || x == 'C' || x == ' ') {
song[i] = x;
i++;
led();
}
if (x == '0') {
play = 1;
j = 0;
count = i;
}
}
}
for ( j = 0; play == 1 && j < count; ) {
while (Serial.available() > 0 ) {
x = Serial.read();
}
if (x != '1') {
float value = analogRead(A7);
float freq = (value / 256) ;
float tune = analogRead(A6);
float tuned = tune / 512;
float poop = ((value + tune) / 2) / 1024;
Serial.println(song[j]);
led();
tone(speakerPin, (frequency(song[j])*tuned), (150 * freq));
delay(140);
if (poop == 0) {
char_OFF();
}
if (poop <= .10) {
char_ONE();
}
if (poop >= .10 && poop <= .2) {
char_TWO();
}
if (poop >= .20 && poop <= .3) {
char_THREE();
}
if (poop >= .30 && poop <= .4) {
char_FOUR();
}
if (poop >= .40 && poop <= .5) {
char_FIVE();
}
if (poop >= .50 && poop <= .6) {
char_SIX();
}
if (poop >= .70 && poop <= .8) {
char_SEVEN();
}
if (poop >= .80 && poop <= .9) {
char_EIGHT();
}
if (poop >= .90 && poop <= .95) {
char_NINE();
}
if (poop >= .95 && poop <= 1.1) {
char_TEN();
}
j++;
}
if (x == '1') {
play = 0;
}
}
}