Components and supplies
Rotary potentiometer (generic)
Slide Switch
Arduino UNO
Solderless Breadboard Full Size
Jumper wires (generic)
Tactile Switch, Top Actuated
Apps and platforms
Arduino IDE
Project description
Code
PIANO.ino
c_cpp
1// nomenclatura de pines digitales al que corresponde cada nota 2int C = 2; 3int CS = 3; 4int D = 4; 5int DS = 5; 6int E = 6; 7int F = 7; 8int FS = 8; 9int G = 9; 10int GS = 10; 11int A = 11; 12int AS = 12; 13int B = 13; 14int octabajo = 0; 15int octarriba = 1; 16int tiempo = analogRead(A4); 17int pitch_bend = analogRead(A5); 18 19//nomenclatura de referencia de frecuencia por nota 20 21int c = 262; 22int cs = 277; 23int d = 294; 24int ds = 311; 25int e = 330; 26int f = 349; 27int fs = 370; 28int g = 392; 29int gs = 415; 30int a = 440; 31int as = 466; 32int b = 494; 33 34void setup() { 35 // INPUT CONFIG 36 pinMode(C, INPUT_PULLUP); 37 pinMode(CS, INPUT_PULLUP); 38 pinMode(D, INPUT_PULLUP); 39 pinMode(DS, INPUT_PULLUP); 40 pinMode(E, INPUT_PULLUP); 41 pinMode(F, INPUT_PULLUP); 42 pinMode(FS, INPUT_PULLUP); 43 pinMode(G, INPUT_PULLUP); 44 pinMode(GS, INPUT_PULLUP); 45 pinMode(A, INPUT_PULLUP); 46 pinMode(AS, INPUT_PULLUP); 47 pinMode(B, INPUT_PULLUP); 48 pinMode(octabajo, INPUT_PULLUP); 49 pinMode(octarriba, INPUT_PULLUP); 50 pinMode(A4, INPUT); 51 // OUTPUT CONFIG 52 pinMode(A2, OUTPUT); 53 // start serial port 54 Serial.begin(9600); 55} 56 57 58 59void loop() { 60 61 // put your main code here, to run repeatedly: 62 digitalRead(0); 63 digitalRead(1); 64 65 Serial.println(analogRead(A4)); 66 67 if (!digitalRead(C)) { 68 tone(A2, c+(analogRead(A5)/5)); 69 delay(analogRead(A4)); 70 digitalRead(C); 71 } 72 if (!digitalRead(C)&&!digitalRead(octabajo)) { 73 tone(A2, c/2+((analogRead(A5)/5))); 74 delay(analogRead(A4)); 75 digitalRead(C); 76 } 77 if (!digitalRead(C)&&!digitalRead(octarriba)) { 78 tone(A2, c*2+((analogRead(A5)/5))); 79 delay(analogRead(A4)); 80 digitalRead(C); 81 } 82 83 84 digitalRead(CS); 85 if (!digitalRead(CS)) { 86 tone(A2, cs+(analogRead(A5)/5)); 87 delay(analogRead(A4)); 88 digitalRead(CS); 89 } 90 if (!digitalRead(CS)&&!digitalRead(octabajo)) { 91 tone(A2, cs/2+((analogRead(A5)/5))); 92 delay(analogRead(A4)); 93 digitalRead(CS); 94 } 95 if (!digitalRead(CS)&&!digitalRead(octarriba)) { 96 tone(A2, cs*2+((analogRead(A5)/5))); 97 delay(analogRead(A4)); 98 digitalRead(CS); 99 } 100 101 digitalRead(D); 102 if (!digitalRead(D)) { 103 tone(A2, d+(analogRead(A5)/5)); 104 delay(analogRead(A4)); 105 digitalRead(D); 106 } 107 if (!digitalRead(D)&&!digitalRead(octabajo)) { 108 tone(A2, d/2+((analogRead(A5)/5))); 109 delay(analogRead(A4)); 110 digitalRead(D); 111 } 112 if (!digitalRead(D)&&!digitalRead(octarriba)) { 113 tone(A2, d*2+((analogRead(A5)/5))); 114 delay(analogRead(A4)); 115 digitalRead(D); 116 } 117 118 digitalRead(DS); 119 if (!digitalRead(DS)) { 120 tone(A2, ds+(analogRead(A5)/5)); 121 delay(analogRead(A4)); 122 digitalRead(DS); 123 } 124 if (!digitalRead(DS)&&!digitalRead(octabajo)) { 125 tone(A2, ds/2+((analogRead(A5)/5))); 126 delay(analogRead(A4)); 127 digitalRead(DS); 128 } 129 if (!digitalRead(DS)&&!digitalRead(octarriba)) { 130 tone(A2, ds*2+((analogRead(A5)/5))); 131 delay(analogRead(A4)); 132 digitalRead(DS); 133 } 134 135 digitalRead(E); 136 if (!digitalRead(E)) { 137 tone(A2, e+(analogRead(A5)/5)); 138 delay(analogRead(A4)); 139 digitalRead(E); 140 } 141 if (!digitalRead(E)&&!digitalRead(octabajo)) { 142 tone(A2, e/2+((analogRead(A5)/5))); 143 delay(analogRead(A4)); 144 digitalRead(E); 145 } 146 if (!digitalRead(E)&&!digitalRead(octarriba)) { 147 tone(A2, e*2+((analogRead(A5)/5))); 148 delay(analogRead(A4)); 149 digitalRead(E); 150 } 151 152 digitalRead(F); 153 if (!digitalRead(F)) { 154 tone(A2, f+(analogRead(A5)/5)); 155 delay(analogRead(A4)); 156 digitalRead(F); 157 }if (!digitalRead(F)&&!digitalRead(octabajo)) { 158 tone(A2, f/2+((analogRead(A5)/5))); 159 delay(analogRead(A4)); 160 digitalRead(F); 161 } 162 if (!digitalRead(F)&&!digitalRead(octarriba)) { 163 tone(A2, f*2+((analogRead(A5)/5))); 164 delay(analogRead(A4)); 165 digitalRead(F); 166 } 167 168 digitalRead(FS); 169 if (!digitalRead(FS)) { 170 tone(A2, fs+(analogRead(A5)/5)); 171 delay(analogRead(A4)); 172 digitalRead(FS); 173 } 174 if (!digitalRead(FS)&&!digitalRead(octabajo)) { 175 tone(A2, fs/2+((analogRead(A5)/5))); 176 delay(analogRead(A4)); 177 digitalRead(FS); 178 } 179 if (!digitalRead(FS)&&!digitalRead(octarriba)) { 180 tone(A2, fs*2+((analogRead(A5)/5))); 181 delay(analogRead(A4)); 182 digitalRead(FS); 183 } 184 185 digitalRead(G); 186 if (!digitalRead(G)) { 187 tone(A2, g+(analogRead(A5)/5)); 188 delay(analogRead(A4)); 189 digitalRead(G); 190 } 191 if (!digitalRead(G)&&!digitalRead(octabajo)) { 192 tone(A2, g/2+((analogRead(A5)/5))); 193 delay(analogRead(A4)); 194 digitalRead(G); 195 } 196 if (!digitalRead(G)&&!digitalRead(octarriba)) { 197 tone(A2, g*2+((analogRead(A5)/5))); 198 delay(analogRead(A4)); 199 digitalRead(G); 200 } 201 202 digitalRead(GS); 203 if (!digitalRead(GS)) { 204 tone(A2, gs+(analogRead(A5)/5)); 205 delay(analogRead(A4)); 206 digitalRead(GS); 207 } 208 if (!digitalRead(GS)&&!digitalRead(octabajo)) { 209 tone(A2, gs/2+((analogRead(A5)/5))); 210 delay(analogRead(A4)); 211 digitalRead(GS); 212 } 213 if (!digitalRead(GS)&&!digitalRead(octarriba)) { 214 tone(A2, gs*2+((analogRead(A5)/5))); 215 delay(analogRead(A4)); 216 digitalRead(GS); 217 } 218 219 digitalRead(A); 220 if (!digitalRead(A)) { 221 tone(A2, a+(analogRead(A5)/5)); 222 delay(analogRead(A4)); 223 digitalRead(A); 224 } 225 if (!digitalRead(A)&&!digitalRead(octabajo)) { 226 tone(A2, a/2+((analogRead(A5)/5))); 227 delay(analogRead(A4)); 228 digitalRead(A); 229 } 230 if (!digitalRead(A)&&!digitalRead(octarriba)) { 231 tone(A2, a*2+((analogRead(A5)/5))); 232 delay(analogRead(A4)); 233 digitalRead(A); 234 } 235 236 digitalRead(AS); 237 if (!digitalRead(AS)) { 238 tone(A2, as+(analogRead(A5)/5)); 239 delay(analogRead(A4)); 240 digitalRead(AS); 241 } 242 if (!digitalRead(AS)&&!digitalRead(octabajo)) { 243 tone(A2, as/2+((analogRead(A5)/5))); 244 delay(analogRead(A4)); 245 digitalRead(AS); 246 } 247 if (!digitalRead(AS)&&!digitalRead(octarriba)) { 248 tone(A2, as*2+((analogRead(A5)/5))); 249 delay(analogRead(A4)); 250 digitalRead(AS); 251 } 252 253 digitalRead(B); 254 if (!digitalRead(B)) { 255 tone(A2, b+(analogRead(A5)/5)); 256 delay(analogRead(A4)); 257 digitalRead(B); 258 } 259 if (!digitalRead(B)&&!digitalRead(octabajo)) { 260 tone(A2, b/2+((analogRead(A5)/5))); 261 delay(analogRead(A4)); 262 digitalRead(B); 263 } 264 if (!digitalRead(B)&&!digitalRead(octarriba)) { 265 tone(A2, b*2+((analogRead(A5)/5))); 266 delay(analogRead(A4)); 267 digitalRead(B); 268 } 269 270 noTone(A2); 271 272 273 } 274
PIANO.ino
c_cpp
1// nomenclatura de pines digitales al que corresponde cada nota 2int C = 2; 3int CS = 3; 4int D = 4; 5int DS = 5; 6int E = 6; 7int F = 7; 8int FS = 8; 9int G = 9; 10int GS = 10; 11int A = 11; 12int AS = 12; 13int B = 13; 14int octabajo = 0; 15int octarriba = 1; 16int tiempo = analogRead(A4); 17int pitch_bend = analogRead(A5); 18 19//nomenclatura de referencia de frecuencia por nota 20 21int c = 262; 22int cs = 277; 23int d = 294; 24int ds = 311; 25int e = 330; 26int f = 349; 27int fs = 370; 28int g = 392; 29int gs = 415; 30int a = 440; 31int as = 466; 32int b = 494; 33 34void setup() { 35 // INPUT CONFIG 36 pinMode(C, INPUT_PULLUP); 37 pinMode(CS, INPUT_PULLUP); 38 pinMode(D, INPUT_PULLUP); 39 pinMode(DS, INPUT_PULLUP); 40 pinMode(E, INPUT_PULLUP); 41 pinMode(F, INPUT_PULLUP); 42 pinMode(FS, INPUT_PULLUP); 43 pinMode(G, INPUT_PULLUP); 44 pinMode(GS, INPUT_PULLUP); 45 pinMode(A, INPUT_PULLUP); 46 pinMode(AS, INPUT_PULLUP); 47 pinMode(B, INPUT_PULLUP); 48 pinMode(octabajo, INPUT_PULLUP); 49 pinMode(octarriba, INPUT_PULLUP); 50 pinMode(A4, INPUT); 51 // OUTPUT CONFIG 52 pinMode(A2, OUTPUT); 53 // start serial port 54 Serial.begin(9600); 55} 56 57 58 59void loop() { 60 61 // put your main code here, to run repeatedly: 62 digitalRead(0); 63 digitalRead(1); 64 65 Serial.println(analogRead(A4)); 66 67 if (!digitalRead(C)) { 68 tone(A2, c+(analogRead(A5)/5)); 69 delay(analogRead(A4)); 70 digitalRead(C); 71 } 72 if (!digitalRead(C)&&!digitalRead(octabajo)) { 73 tone(A2, c/2+((analogRead(A5)/5))); 74 delay(analogRead(A4)); 75 digitalRead(C); 76 } 77 if (!digitalRead(C)&&!digitalRead(octarriba)) { 78 tone(A2, c*2+((analogRead(A5)/5))); 79 delay(analogRead(A4)); 80 digitalRead(C); 81 } 82 83 84 digitalRead(CS); 85 if (!digitalRead(CS)) { 86 tone(A2, cs+(analogRead(A5)/5)); 87 delay(analogRead(A4)); 88 digitalRead(CS); 89 } 90 if (!digitalRead(CS)&&!digitalRead(octabajo)) { 91 tone(A2, cs/2+((analogRead(A5)/5))); 92 delay(analogRead(A4)); 93 digitalRead(CS); 94 } 95 if (!digitalRead(CS)&&!digitalRead(octarriba)) { 96 tone(A2, cs*2+((analogRead(A5)/5))); 97 delay(analogRead(A4)); 98 digitalRead(CS); 99 } 100 101 digitalRead(D); 102 if (!digitalRead(D)) { 103 tone(A2, d+(analogRead(A5)/5)); 104 delay(analogRead(A4)); 105 digitalRead(D); 106 } 107 if (!digitalRead(D)&&!digitalRead(octabajo)) { 108 tone(A2, d/2+((analogRead(A5)/5))); 109 delay(analogRead(A4)); 110 digitalRead(D); 111 } 112 if (!digitalRead(D)&&!digitalRead(octarriba)) { 113 tone(A2, d*2+((analogRead(A5)/5))); 114 delay(analogRead(A4)); 115 digitalRead(D); 116 } 117 118 digitalRead(DS); 119 if (!digitalRead(DS)) { 120 tone(A2, ds+(analogRead(A5)/5)); 121 delay(analogRead(A4)); 122 digitalRead(DS); 123 } 124 if (!digitalRead(DS)&&!digitalRead(octabajo)) { 125 tone(A2, ds/2+((analogRead(A5)/5))); 126 delay(analogRead(A4)); 127 digitalRead(DS); 128 } 129 if (!digitalRead(DS)&&!digitalRead(octarriba)) { 130 tone(A2, ds*2+((analogRead(A5)/5))); 131 delay(analogRead(A4)); 132 digitalRead(DS); 133 } 134 135 digitalRead(E); 136 if (!digitalRead(E)) { 137 tone(A2, e+(analogRead(A5)/5)); 138 delay(analogRead(A4)); 139 digitalRead(E); 140 } 141 if (!digitalRead(E)&&!digitalRead(octabajo)) { 142 tone(A2, e/2+((analogRead(A5)/5))); 143 delay(analogRead(A4)); 144 digitalRead(E); 145 } 146 if (!digitalRead(E)&&!digitalRead(octarriba)) { 147 tone(A2, e*2+((analogRead(A5)/5))); 148 delay(analogRead(A4)); 149 digitalRead(E); 150 } 151 152 digitalRead(F); 153 if (!digitalRead(F)) { 154 tone(A2, f+(analogRead(A5)/5)); 155 delay(analogRead(A4)); 156 digitalRead(F); 157 }if (!digitalRead(F)&&!digitalRead(octabajo)) { 158 tone(A2, f/2+((analogRead(A5)/5))); 159 delay(analogRead(A4)); 160 digitalRead(F); 161 } 162 if (!digitalRead(F)&&!digitalRead(octarriba)) { 163 tone(A2, f*2+((analogRead(A5)/5))); 164 delay(analogRead(A4)); 165 digitalRead(F); 166 } 167 168 digitalRead(FS); 169 if (!digitalRead(FS)) { 170 tone(A2, fs+(analogRead(A5)/5)); 171 delay(analogRead(A4)); 172 digitalRead(FS); 173 } 174 if (!digitalRead(FS)&&!digitalRead(octabajo)) { 175 tone(A2, fs/2+((analogRead(A5)/5))); 176 delay(analogRead(A4)); 177 digitalRead(FS); 178 } 179 if (!digitalRead(FS)&&!digitalRead(octarriba)) { 180 tone(A2, fs*2+((analogRead(A5)/5))); 181 delay(analogRead(A4)); 182 digitalRead(FS); 183 } 184 185 digitalRead(G); 186 if (!digitalRead(G)) { 187 tone(A2, g+(analogRead(A5)/5)); 188 delay(analogRead(A4)); 189 digitalRead(G); 190 } 191 if (!digitalRead(G)&&!digitalRead(octabajo)) { 192 tone(A2, g/2+((analogRead(A5)/5))); 193 delay(analogRead(A4)); 194 digitalRead(G); 195 } 196 if (!digitalRead(G)&&!digitalRead(octarriba)) { 197 tone(A2, g*2+((analogRead(A5)/5))); 198 delay(analogRead(A4)); 199 digitalRead(G); 200 } 201 202 digitalRead(GS); 203 if (!digitalRead(GS)) { 204 tone(A2, gs+(analogRead(A5)/5)); 205 delay(analogRead(A4)); 206 digitalRead(GS); 207 } 208 if (!digitalRead(GS)&&!digitalRead(octabajo)) { 209 tone(A2, gs/2+((analogRead(A5)/5))); 210 delay(analogRead(A4)); 211 digitalRead(GS); 212 } 213 if (!digitalRead(GS)&&!digitalRead(octarriba)) { 214 tone(A2, gs*2+((analogRead(A5)/5))); 215 delay(analogRead(A4)); 216 digitalRead(GS); 217 } 218 219 digitalRead(A); 220 if (!digitalRead(A)) { 221 tone(A2, a+(analogRead(A5)/5)); 222 delay(analogRead(A4)); 223 digitalRead(A); 224 } 225 if (!digitalRead(A)&&!digitalRead(octabajo)) { 226 tone(A2, a/2+((analogRead(A5)/5))); 227 delay(analogRead(A4)); 228 digitalRead(A); 229 } 230 if (!digitalRead(A)&&!digitalRead(octarriba)) { 231 tone(A2, a*2+((analogRead(A5)/5))); 232 delay(analogRead(A4)); 233 digitalRead(A); 234 } 235 236 digitalRead(AS); 237 if (!digitalRead(AS)) { 238 tone(A2, as+(analogRead(A5)/5)); 239 delay(analogRead(A4)); 240 digitalRead(AS); 241 } 242 if (!digitalRead(AS)&&!digitalRead(octabajo)) { 243 tone(A2, as/2+((analogRead(A5)/5))); 244 delay(analogRead(A4)); 245 digitalRead(AS); 246 } 247 if (!digitalRead(AS)&&!digitalRead(octarriba)) { 248 tone(A2, as*2+((analogRead(A5)/5))); 249 delay(analogRead(A4)); 250 digitalRead(AS); 251 } 252 253 digitalRead(B); 254 if (!digitalRead(B)) { 255 tone(A2, b+(analogRead(A5)/5)); 256 delay(analogRead(A4)); 257 digitalRead(B); 258 } 259 if (!digitalRead(B)&&!digitalRead(octabajo)) { 260 tone(A2, b/2+((analogRead(A5)/5))); 261 delay(analogRead(A4)); 262 digitalRead(B); 263 } 264 if (!digitalRead(B)&&!digitalRead(octarriba)) { 265 tone(A2, b*2+((analogRead(A5)/5))); 266 delay(analogRead(A4)); 267 digitalRead(B); 268 } 269 270 noTone(A2); 271 272 273 } 274
Downloadable files
captura_2SaLCvvBdd.JPG
captura_2SaLCvvBdd.JPG
Comments
Only logged in users can leave comments
fr_pal
0 Followers
•0 Projects
Table of contents
Intro
12
0