Skip to content

Commit 45dc36d

Browse files
authored
Add files via upload
0 parents  commit 45dc36d

File tree

1 file changed

+127
-0
lines changed

1 file changed

+127
-0
lines changed

E1M1Player/E1M1Player.ino

Lines changed: 127 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,127 @@
1+
int freq[6][10]={
2+
{329,349,370,392,415,440,466,494,523,659},
3+
{247,262,277,294,311,329,349,370,392,494},
4+
{196,208,220,233,247,262,277,294,311,392},
5+
{147,156,165,175,185,196,208,156,233,294},
6+
{110,117,123,131,139,147,156,165,175,220},
7+
{82,87,92,98,104,110,117,123,131,165}
8+
};//line- string
9+
// column-fret
10+
//frets from 0 to 7
11+
12+
#define E0 0
13+
#define B 1
14+
#define G 2
15+
#define D 3
16+
#define A 4
17+
#define E1 5
18+
#define Fret12 9
19+
#define Freq15 784
20+
#define Freq19 988
21+
22+
#define buzzer 2
23+
#define diod 3
24+
#define num 10
25+
26+
void setup() {
27+
pinMode(buzzer,OUTPUT);
28+
for(int i=0;i<num;i++)
29+
{
30+
pinMode(diod+i,OUTPUT);
31+
}
32+
}
33+
34+
void loop() {
35+
36+
int dur=64;
37+
PlayNote(E0,2,dur);
38+
PlayNote(E0,0,dur);
39+
PlayNote(B,4,dur);
40+
PlayNote(E0,2,dur);
41+
PlayNote(E0,5,dur);
42+
PlayNote(E0,3,dur);
43+
PlayNote(E0,2,dur);
44+
PlayNote(B,4,dur);
45+
PlayNote(E0,2,dur);
46+
PlayNote(E0,3,dur);
47+
PlayNote(E0,5,dur);
48+
PlayNote(E0,7,dur);
49+
PlayNote(E0,5,dur);
50+
PlayNote(E0,3,dur);
51+
PlayNote(E0,2,dur);
52+
PlayNote(B,4,dur);
53+
54+
dur=128;
55+
Chor(dur,E1);
56+
PlayNote(E1,0,dur*2);
57+
PlayNote(A,2,dur);
58+
PlayNote(E1,3,dur);
59+
60+
Chor(dur,E1);
61+
PlayNote(E1,0,dur*2);
62+
63+
Chor(dur,E1);
64+
PlayNote(E1,0,dur*2);
65+
PlayNote(A,2,dur);
66+
PlayNote(A,3,dur);
67+
68+
PlayNote(E1,0,dur*2);
69+
PlayNote(A,7,dur);
70+
PlayNote(E1,0,dur*2);
71+
PlayNote(A,5,dur);
72+
PlayNote(E1,0,dur*2);
73+
74+
dur=64;
75+
PlayNote(E0,7,dur);
76+
PlayNote(B,8,dur);
77+
PlayNote(B,5,dur);
78+
PlayNote(B,8,dur);
79+
PlayNote(E0,7,dur);
80+
PlayNote(B,8,dur);
81+
PlayNote(E0,7,dur);
82+
PlayNote(E0,Fret12,dur);
83+
PlayNote(B,Fret12,dur);
84+
PlayNote(G,Fret12,dur);
85+
PlayNote(B,Fret12,dur);
86+
PlayNote(G,Fret12,dur);
87+
PlayNote(B,Fret12,dur);
88+
PlayNote(E0,Fret12,dur);
89+
tone(buzzer,Freq15,dur);
90+
Diodes(Freq15);
91+
delay(dur);
92+
tone(buzzer,Freq19,dur);
93+
Diodes(Freq19);
94+
delay(dur);
95+
Diodes(0);
96+
delay(4000);
97+
}
98+
99+
inline void PlayNote(int string,int fret,int dur)
100+
{
101+
int frequency=freq[string][fret];
102+
Diodes(frequency);
103+
tone(buzzer,frequency,dur);
104+
delay(dur);
105+
noTone(buzzer);
106+
}
107+
inline void Diodes(int frequency)
108+
{
109+
for(int i=0;i<num;i++)
110+
{
111+
if(frequency>50*i)
112+
digitalWrite(diod+i,HIGH);
113+
else digitalWrite(diod+i,LOW);
114+
}
115+
}
116+
117+
inline void Chor(int dur,int string)
118+
{
119+
PlayNote(string,0,dur*2);
120+
PlayNote(string-1,7,dur);
121+
PlayNote(string,0,dur*2);
122+
PlayNote(string-1,5,dur);
123+
PlayNote(string,0,dur*2);
124+
PlayNote(string-1,3,dur);
125+
PlayNote(string,0,dur*2);
126+
PlayNote(string-1,1,dur);
127+
}

0 commit comments

Comments
 (0)