Leong Kum Loong (NYP) / tone_h

Dependents:   Tone_Example

Committer:
reesey
Date:
Sun Nov 19 10:17:34 2017 +0000
Revision:
2:7f2974b69b48
Parent:
1:3b00679c208a
Child:
3:9ddabd24f48c
tone.h; Written by Leong Kum Loong.; 19 Nov 2017, REV. 1

Who changed what in which revision?

UserRevisionLine numberNew contents of line
reesey 0:2b4c66b3f6aa 1 #include "mbed.h"
reesey 0:2b4c66b3f6aa 2 #include "tone.h"
reesey 0:2b4c66b3f6aa 3 /*
reesey 0:2b4c66b3f6aa 4 tone.h
reesey 0:2b4c66b3f6aa 5 Written by Leong Kum Loong.
reesey 1:3b00679c208a 6 19 Nov 2017, REV. 1
reesey 0:2b4c66b3f6aa 7
reesey 0:2b4c66b3f6aa 8 All routines and functions in this library are written by me solely with the purpose
reesey 0:2b4c66b3f6aa 9 of implementing an identical "tone" library that was introduced by Arduino IDE.
reesey 1:3b00679c208a 10
reesey 1:3b00679c208a 11 Example reference from Github
reesey 1:3b00679c208a 12 ===============================
reesey 1:3b00679c208a 13 The mario_example routine "notes" are reference to the work of Gregory Kielian.
reesey 1:3b00679c208a 14 The starwars_example routine "notes" are reference to the work of nicksort.
reesey 0:2b4c66b3f6aa 15 */
reesey 0:2b4c66b3f6aa 16
reesey 0:2b4c66b3f6aa 17 PwmOut speaker(p26);
reesey 0:2b4c66b3f6aa 18
reesey 2:7f2974b69b48 19 //Notes for starwars_example.
reesey 1:3b00679c208a 20 int c = 261, d = 294, e = 329, f = 349, g = 391, gS = 415, a = 440, aS = 455, b = 466, cH = 523;
reesey 1:3b00679c208a 21 int cSH = 554, dH = 587, dSH = 622, eH = 659, fH = 698, fSH = 740, gH = 784, gSH = 830, aH = 880;
reesey 1:3b00679c208a 22
reesey 0:2b4c66b3f6aa 23 void tone(int frequency, int duration_ms){
reesey 0:2b4c66b3f6aa 24 float period = (float)1/(float)frequency;
reesey 0:2b4c66b3f6aa 25 speaker.period(period);
reesey 0:2b4c66b3f6aa 26 speaker.pulsewidth(period/(float)(2));
reesey 2:7f2974b69b48 27 wait_ms(duration_ms);
reesey 0:2b4c66b3f6aa 28 speaker = 0;
reesey 0:2b4c66b3f6aa 29 }
reesey 0:2b4c66b3f6aa 30
reesey 2:7f2974b69b48 31 //Mario theme section.
reesey 0:2b4c66b3f6aa 32 static void delay(int millis){
reesey 0:2b4c66b3f6aa 33 wait_ms(millis * 0.7); //If play speed sounds weird, try modify delay here.
reesey 0:2b4c66b3f6aa 34 }
reesey 0:2b4c66b3f6aa 35
reesey 1:3b00679c208a 36 void mario_example(){
reesey 1:3b00679c208a 37 tone(660,100);
reesey 1:3b00679c208a 38 delay(150);
reesey 1:3b00679c208a 39 tone(660,100);
reesey 1:3b00679c208a 40 delay(300);
reesey 1:3b00679c208a 41 tone(660,100);
reesey 1:3b00679c208a 42 delay(300);
reesey 1:3b00679c208a 43 tone(510,100);
reesey 1:3b00679c208a 44 delay(100);
reesey 1:3b00679c208a 45 tone(660,100);
reesey 1:3b00679c208a 46 delay(300);
reesey 1:3b00679c208a 47 tone(770,100);
reesey 1:3b00679c208a 48 delay(550);
reesey 1:3b00679c208a 49 tone(380,100);
reesey 1:3b00679c208a 50 delay(575);
reesey 1:3b00679c208a 51
reesey 1:3b00679c208a 52 tone(510,100);
reesey 1:3b00679c208a 53 delay(450);
reesey 1:3b00679c208a 54 tone(380,100);
reesey 1:3b00679c208a 55 delay(400);
reesey 1:3b00679c208a 56 tone(320,100);
reesey 1:3b00679c208a 57 delay(500);
reesey 1:3b00679c208a 58 tone(440,100);
reesey 1:3b00679c208a 59 delay(300);
reesey 1:3b00679c208a 60 tone(480,80);
reesey 1:3b00679c208a 61 delay(330);
reesey 1:3b00679c208a 62 tone(450,100);
reesey 1:3b00679c208a 63 delay(150);
reesey 1:3b00679c208a 64 tone(430,100);
reesey 1:3b00679c208a 65 delay(300);
reesey 1:3b00679c208a 66 tone(380,100);
reesey 1:3b00679c208a 67 delay(200);
reesey 1:3b00679c208a 68 tone(660,80);
reesey 1:3b00679c208a 69 delay(200);
reesey 1:3b00679c208a 70 tone(760,50);
reesey 1:3b00679c208a 71 delay(150);
reesey 1:3b00679c208a 72 tone(860,100);
reesey 1:3b00679c208a 73 delay(300);
reesey 1:3b00679c208a 74 tone(700,80);
reesey 1:3b00679c208a 75 delay(150);
reesey 1:3b00679c208a 76 tone(760,50);
reesey 1:3b00679c208a 77 delay(350);
reesey 1:3b00679c208a 78 tone(660,80);
reesey 1:3b00679c208a 79 delay(300);
reesey 1:3b00679c208a 80 tone(520,80);
reesey 1:3b00679c208a 81 delay(150);
reesey 1:3b00679c208a 82 tone(580,80);
reesey 1:3b00679c208a 83 delay(150);
reesey 1:3b00679c208a 84 tone(480,80);
reesey 1:3b00679c208a 85 delay(500);
reesey 0:2b4c66b3f6aa 86
reesey 1:3b00679c208a 87 tone(510,100);
reesey 1:3b00679c208a 88 delay(450);
reesey 1:3b00679c208a 89 tone(380,100);
reesey 1:3b00679c208a 90 delay(400);
reesey 1:3b00679c208a 91 tone(320,100);
reesey 1:3b00679c208a 92 delay(500);
reesey 1:3b00679c208a 93 tone(440,100);
reesey 1:3b00679c208a 94 delay(300);
reesey 1:3b00679c208a 95 tone(480,80);
reesey 1:3b00679c208a 96 delay(330);
reesey 1:3b00679c208a 97 tone(450,100);
reesey 1:3b00679c208a 98 delay(150);
reesey 1:3b00679c208a 99 tone(430,100);
reesey 1:3b00679c208a 100 delay(300);
reesey 1:3b00679c208a 101 tone(380,100);
reesey 1:3b00679c208a 102 delay(200);
reesey 1:3b00679c208a 103 tone(660,80);
reesey 1:3b00679c208a 104 delay(200);
reesey 1:3b00679c208a 105 tone(760,50);
reesey 1:3b00679c208a 106 delay(150);
reesey 1:3b00679c208a 107 tone(860,100);
reesey 1:3b00679c208a 108 delay(300);
reesey 1:3b00679c208a 109 tone(700,80);
reesey 1:3b00679c208a 110 delay(150);
reesey 1:3b00679c208a 111 tone(760,50);
reesey 1:3b00679c208a 112 delay(350);
reesey 1:3b00679c208a 113 tone(660,80);
reesey 1:3b00679c208a 114 delay(300);
reesey 1:3b00679c208a 115 tone(520,80);
reesey 1:3b00679c208a 116 delay(150);
reesey 1:3b00679c208a 117 tone(580,80);
reesey 1:3b00679c208a 118 delay(150);
reesey 1:3b00679c208a 119 tone(480,80);
reesey 1:3b00679c208a 120 delay(500);
reesey 0:2b4c66b3f6aa 121
reesey 1:3b00679c208a 122 tone(500,100);
reesey 1:3b00679c208a 123 delay(300);
reesey 1:3b00679c208a 124
reesey 1:3b00679c208a 125 tone(760,100);
reesey 1:3b00679c208a 126 delay(100);
reesey 1:3b00679c208a 127 tone(720,100);
reesey 1:3b00679c208a 128 delay(150);
reesey 1:3b00679c208a 129 tone(680,100);
reesey 1:3b00679c208a 130 delay(150);
reesey 1:3b00679c208a 131 tone(620,150);
reesey 1:3b00679c208a 132 delay(300);
reesey 1:3b00679c208a 133
reesey 1:3b00679c208a 134 tone(650,150);
reesey 1:3b00679c208a 135 delay(300);
reesey 1:3b00679c208a 136 tone(380,100);
reesey 1:3b00679c208a 137 delay(150);
reesey 1:3b00679c208a 138 tone(430,100);
reesey 1:3b00679c208a 139 delay(150);
reesey 0:2b4c66b3f6aa 140
reesey 1:3b00679c208a 141 tone(500,100);
reesey 1:3b00679c208a 142 delay(300);
reesey 1:3b00679c208a 143 tone(430,100);
reesey 1:3b00679c208a 144 delay(150);
reesey 1:3b00679c208a 145 tone(500,100);
reesey 1:3b00679c208a 146 delay(100);
reesey 1:3b00679c208a 147 tone(570,100);
reesey 1:3b00679c208a 148 delay(220);
reesey 1:3b00679c208a 149
reesey 1:3b00679c208a 150 tone(500,100);
reesey 1:3b00679c208a 151 delay(300);
reesey 0:2b4c66b3f6aa 152
reesey 1:3b00679c208a 153 tone(760,100);
reesey 1:3b00679c208a 154 delay(100);
reesey 1:3b00679c208a 155 tone(720,100);
reesey 1:3b00679c208a 156 delay(150);
reesey 1:3b00679c208a 157 tone(680,100);
reesey 1:3b00679c208a 158 delay(150);
reesey 1:3b00679c208a 159 tone(620,150);
reesey 1:3b00679c208a 160 delay(300);
reesey 0:2b4c66b3f6aa 161
reesey 1:3b00679c208a 162 tone(650,200);
reesey 1:3b00679c208a 163 delay(300);
reesey 0:2b4c66b3f6aa 164
reesey 1:3b00679c208a 165 tone(1020,80);
reesey 1:3b00679c208a 166 delay(300);
reesey 1:3b00679c208a 167 tone(1020,80);
reesey 1:3b00679c208a 168 delay(150);
reesey 1:3b00679c208a 169 tone(1020,80);
reesey 1:3b00679c208a 170 delay(300);
reesey 0:2b4c66b3f6aa 171
reesey 1:3b00679c208a 172 tone(380,100);
reesey 1:3b00679c208a 173 delay(300);
reesey 1:3b00679c208a 174 tone(500,100);
reesey 1:3b00679c208a 175 delay(300);
reesey 0:2b4c66b3f6aa 176
reesey 1:3b00679c208a 177 tone(760,100);
reesey 1:3b00679c208a 178 delay(100);
reesey 1:3b00679c208a 179 tone(720,100);
reesey 1:3b00679c208a 180 delay(150);
reesey 1:3b00679c208a 181 tone(680,100);
reesey 1:3b00679c208a 182 delay(150);
reesey 1:3b00679c208a 183 tone(620,150);
reesey 1:3b00679c208a 184 delay(300);
reesey 0:2b4c66b3f6aa 185
reesey 1:3b00679c208a 186 tone(650,150);
reesey 1:3b00679c208a 187 delay(300);
reesey 1:3b00679c208a 188 tone(380,100);
reesey 1:3b00679c208a 189 delay(150);
reesey 1:3b00679c208a 190 tone(430,100);
reesey 1:3b00679c208a 191 delay(150);
reesey 0:2b4c66b3f6aa 192
reesey 1:3b00679c208a 193 tone(500,100);
reesey 1:3b00679c208a 194 delay(300);
reesey 1:3b00679c208a 195 tone(430,100);
reesey 1:3b00679c208a 196 delay(150);
reesey 1:3b00679c208a 197 tone(500,100);
reesey 1:3b00679c208a 198 delay(100);
reesey 1:3b00679c208a 199 tone(570,100);
reesey 1:3b00679c208a 200 delay(420);
reesey 1:3b00679c208a 201
reesey 1:3b00679c208a 202 tone(585,100);
reesey 1:3b00679c208a 203 delay(450);
reesey 0:2b4c66b3f6aa 204
reesey 1:3b00679c208a 205 tone(550,100);
reesey 1:3b00679c208a 206 delay(420);
reesey 1:3b00679c208a 207
reesey 1:3b00679c208a 208 tone(500,100);
reesey 1:3b00679c208a 209 delay(360);
reesey 0:2b4c66b3f6aa 210
reesey 1:3b00679c208a 211 tone(380,100);
reesey 1:3b00679c208a 212 delay(300);
reesey 1:3b00679c208a 213 tone(500,100);
reesey 1:3b00679c208a 214 delay(300);
reesey 1:3b00679c208a 215 tone(500,100);
reesey 1:3b00679c208a 216 delay(150);
reesey 1:3b00679c208a 217 tone(500,100);
reesey 1:3b00679c208a 218 delay(300);
reesey 0:2b4c66b3f6aa 219
reesey 1:3b00679c208a 220 tone(500,100);
reesey 1:3b00679c208a 221 delay(300);
reesey 1:3b00679c208a 222
reesey 1:3b00679c208a 223 tone(760,100);
reesey 1:3b00679c208a 224 delay(100);
reesey 1:3b00679c208a 225 tone(720,100);
reesey 1:3b00679c208a 226 delay(150);
reesey 1:3b00679c208a 227 tone(680,100);
reesey 1:3b00679c208a 228 delay(150);
reesey 1:3b00679c208a 229 tone(620,150);
reesey 1:3b00679c208a 230 delay(300);
reesey 0:2b4c66b3f6aa 231
reesey 1:3b00679c208a 232 tone(650,150);
reesey 1:3b00679c208a 233 delay(300);
reesey 1:3b00679c208a 234 tone(380,100);
reesey 1:3b00679c208a 235 delay(150);
reesey 1:3b00679c208a 236 tone(430,100);
reesey 1:3b00679c208a 237 delay(150);
reesey 0:2b4c66b3f6aa 238
reesey 1:3b00679c208a 239 tone(500,100);
reesey 1:3b00679c208a 240 delay(300);
reesey 1:3b00679c208a 241 tone(430,100);
reesey 1:3b00679c208a 242 delay(150);
reesey 1:3b00679c208a 243 tone(500,100);
reesey 1:3b00679c208a 244 delay(100);
reesey 1:3b00679c208a 245 tone(570,100);
reesey 1:3b00679c208a 246 delay(220);
reesey 0:2b4c66b3f6aa 247
reesey 1:3b00679c208a 248 tone(500,100);
reesey 1:3b00679c208a 249 delay(300);
reesey 0:2b4c66b3f6aa 250
reesey 1:3b00679c208a 251 tone(760,100);
reesey 1:3b00679c208a 252 delay(100);
reesey 1:3b00679c208a 253 tone(720,100);
reesey 1:3b00679c208a 254 delay(150);
reesey 1:3b00679c208a 255 tone(680,100);
reesey 1:3b00679c208a 256 delay(150);
reesey 1:3b00679c208a 257 tone(620,150);
reesey 1:3b00679c208a 258 delay(300);
reesey 1:3b00679c208a 259
reesey 1:3b00679c208a 260 tone(650,200);
reesey 1:3b00679c208a 261 delay(300);
reesey 0:2b4c66b3f6aa 262
reesey 1:3b00679c208a 263 tone(1020,80);
reesey 1:3b00679c208a 264 delay(300);
reesey 1:3b00679c208a 265 tone(1020,80);
reesey 1:3b00679c208a 266 delay(150);
reesey 1:3b00679c208a 267 tone(1020,80);
reesey 1:3b00679c208a 268 delay(300);
reesey 1:3b00679c208a 269
reesey 1:3b00679c208a 270 tone(380,100);
reesey 1:3b00679c208a 271 delay(300);
reesey 1:3b00679c208a 272 tone(500,100);
reesey 1:3b00679c208a 273 delay(300);
reesey 0:2b4c66b3f6aa 274
reesey 1:3b00679c208a 275 tone(760,100);
reesey 1:3b00679c208a 276 delay(100);
reesey 1:3b00679c208a 277 tone(720,100);
reesey 1:3b00679c208a 278 delay(150);
reesey 1:3b00679c208a 279 tone(680,100);
reesey 1:3b00679c208a 280 delay(150);
reesey 1:3b00679c208a 281 tone(620,150);
reesey 1:3b00679c208a 282 delay(300);
reesey 0:2b4c66b3f6aa 283
reesey 1:3b00679c208a 284 tone(650,150);
reesey 1:3b00679c208a 285 delay(300);
reesey 1:3b00679c208a 286 tone(380,100);
reesey 1:3b00679c208a 287 delay(150);
reesey 1:3b00679c208a 288 tone(430,100);
reesey 1:3b00679c208a 289 delay(150);
reesey 0:2b4c66b3f6aa 290
reesey 1:3b00679c208a 291 tone(500,100);
reesey 1:3b00679c208a 292 delay(300);
reesey 1:3b00679c208a 293 tone(430,100);
reesey 1:3b00679c208a 294 delay(150);
reesey 1:3b00679c208a 295 tone(500,100);
reesey 1:3b00679c208a 296 delay(100);
reesey 1:3b00679c208a 297 tone(570,100);
reesey 1:3b00679c208a 298 delay(420);
reesey 0:2b4c66b3f6aa 299
reesey 1:3b00679c208a 300 tone(585,100);
reesey 1:3b00679c208a 301 delay(450);
reesey 0:2b4c66b3f6aa 302
reesey 1:3b00679c208a 303 tone(550,100);
reesey 1:3b00679c208a 304 delay(420);
reesey 0:2b4c66b3f6aa 305
reesey 1:3b00679c208a 306 tone(500,100);
reesey 1:3b00679c208a 307 delay(360);
reesey 0:2b4c66b3f6aa 308
reesey 1:3b00679c208a 309 tone(380,100);
reesey 1:3b00679c208a 310 delay(300);
reesey 1:3b00679c208a 311 tone(500,100);
reesey 1:3b00679c208a 312 delay(300);
reesey 1:3b00679c208a 313 tone(500,100);
reesey 1:3b00679c208a 314 delay(150);
reesey 1:3b00679c208a 315 tone(500,100);
reesey 1:3b00679c208a 316 delay(300);
reesey 0:2b4c66b3f6aa 317
reesey 1:3b00679c208a 318 tone(500,60);
reesey 1:3b00679c208a 319 delay(150);
reesey 1:3b00679c208a 320 tone(500,80);
reesey 1:3b00679c208a 321 delay(300);
reesey 1:3b00679c208a 322 tone(500,60);
reesey 1:3b00679c208a 323 delay(350);
reesey 1:3b00679c208a 324 tone(500,80);
reesey 1:3b00679c208a 325 delay(150);
reesey 1:3b00679c208a 326 tone(580,80);
reesey 1:3b00679c208a 327 delay(350);
reesey 1:3b00679c208a 328 tone(660,80);
reesey 1:3b00679c208a 329 delay(150);
reesey 1:3b00679c208a 330 tone(500,80);
reesey 1:3b00679c208a 331 delay(300);
reesey 1:3b00679c208a 332 tone(430,80);
reesey 1:3b00679c208a 333 delay(150);
reesey 1:3b00679c208a 334 tone(380,80);
reesey 1:3b00679c208a 335 delay(600);
reesey 0:2b4c66b3f6aa 336
reesey 1:3b00679c208a 337 tone(500,60);
reesey 1:3b00679c208a 338 delay(150);
reesey 1:3b00679c208a 339 tone(500,80);
reesey 1:3b00679c208a 340 delay(300);
reesey 1:3b00679c208a 341 tone(500,60);
reesey 1:3b00679c208a 342 delay(350);
reesey 1:3b00679c208a 343 tone(500,80);
reesey 1:3b00679c208a 344 delay(150);
reesey 1:3b00679c208a 345 tone(580,80);
reesey 1:3b00679c208a 346 delay(150);
reesey 1:3b00679c208a 347 tone(660,80);
reesey 1:3b00679c208a 348 delay(550);
reesey 0:2b4c66b3f6aa 349
reesey 1:3b00679c208a 350 tone(870,80);
reesey 1:3b00679c208a 351 delay(325);
reesey 1:3b00679c208a 352 tone(760,80);
reesey 1:3b00679c208a 353 delay(600);
reesey 0:2b4c66b3f6aa 354
reesey 1:3b00679c208a 355 tone(500,60);
reesey 1:3b00679c208a 356 delay(150);
reesey 1:3b00679c208a 357 tone(500,80);
reesey 1:3b00679c208a 358 delay(300);
reesey 1:3b00679c208a 359 tone(500,60);
reesey 1:3b00679c208a 360 delay(350);
reesey 1:3b00679c208a 361 tone(500,80);
reesey 1:3b00679c208a 362 delay(150);
reesey 1:3b00679c208a 363 tone(580,80);
reesey 1:3b00679c208a 364 delay(350);
reesey 1:3b00679c208a 365 tone(660,80);
reesey 1:3b00679c208a 366 delay(150);
reesey 1:3b00679c208a 367 tone(500,80);
reesey 1:3b00679c208a 368 delay(300);
reesey 1:3b00679c208a 369 tone(430,80);
reesey 1:3b00679c208a 370 delay(150);
reesey 1:3b00679c208a 371 tone(380,80);
reesey 1:3b00679c208a 372 delay(600);
reesey 0:2b4c66b3f6aa 373
reesey 1:3b00679c208a 374 tone(660,100);
reesey 1:3b00679c208a 375 delay(150);
reesey 1:3b00679c208a 376 tone(660,100);
reesey 1:3b00679c208a 377 delay(300);
reesey 1:3b00679c208a 378 tone(660,100);
reesey 1:3b00679c208a 379 delay(300);
reesey 1:3b00679c208a 380 tone(510,100);
reesey 1:3b00679c208a 381 delay(100);
reesey 1:3b00679c208a 382 tone(660,100);
reesey 1:3b00679c208a 383 delay(300);
reesey 1:3b00679c208a 384 tone(770,100);
reesey 1:3b00679c208a 385 delay(550);
reesey 1:3b00679c208a 386 tone(380,100);
reesey 1:3b00679c208a 387 delay(575);
reesey 1:3b00679c208a 388 }
reesey 1:3b00679c208a 389
reesey 1:3b00679c208a 390
reesey 1:3b00679c208a 391 //Star wars theme section.
reesey 1:3b00679c208a 392 void firstSection(){
reesey 1:3b00679c208a 393 tone(a, 500);
reesey 1:3b00679c208a 394 tone(a, 500);
reesey 1:3b00679c208a 395 tone(a, 500);
reesey 1:3b00679c208a 396 tone(f, 350);
reesey 1:3b00679c208a 397 tone(cH, 150);
reesey 1:3b00679c208a 398 tone(a, 500);
reesey 1:3b00679c208a 399 tone(f, 350);
reesey 1:3b00679c208a 400 tone(cH, 150);
reesey 1:3b00679c208a 401 tone(a, 650);
reesey 1:3b00679c208a 402 wait_ms(500);
reesey 1:3b00679c208a 403
reesey 1:3b00679c208a 404 tone(eH, 500);
reesey 1:3b00679c208a 405 tone(eH, 500);
reesey 1:3b00679c208a 406 tone(eH, 500);
reesey 1:3b00679c208a 407 tone(fH, 350);
reesey 1:3b00679c208a 408 tone(cH, 150);
reesey 1:3b00679c208a 409 tone(gS, 500);
reesey 1:3b00679c208a 410 tone(f, 350);
reesey 1:3b00679c208a 411 tone(cH, 150);
reesey 1:3b00679c208a 412 tone(a, 650);
reesey 1:3b00679c208a 413 wait_ms(500);
reesey 1:3b00679c208a 414 }
reesey 1:3b00679c208a 415
reesey 1:3b00679c208a 416 void secondSection(){
reesey 1:3b00679c208a 417 tone(aH, 500);
reesey 1:3b00679c208a 418 tone(a, 300);
reesey 1:3b00679c208a 419 tone(a, 150);
reesey 1:3b00679c208a 420 tone(aH, 500);
reesey 1:3b00679c208a 421 tone(gSH, 325);
reesey 1:3b00679c208a 422 tone(gH, 175);
reesey 1:3b00679c208a 423 tone(fSH, 125);
reesey 1:3b00679c208a 424 tone(fH, 125);
reesey 1:3b00679c208a 425 tone(fSH, 250);
reesey 1:3b00679c208a 426 wait_ms(325);
reesey 1:3b00679c208a 427
reesey 1:3b00679c208a 428 tone(aS, 250);
reesey 1:3b00679c208a 429 tone(dSH, 500);
reesey 1:3b00679c208a 430 tone(dH, 325);
reesey 1:3b00679c208a 431 tone(cSH, 175);
reesey 1:3b00679c208a 432 tone(cH, 125);
reesey 1:3b00679c208a 433 tone(b, 125);
reesey 1:3b00679c208a 434 tone(cH, 250);
reesey 1:3b00679c208a 435 wait_ms(350);
reesey 1:3b00679c208a 436 }
reesey 0:2b4c66b3f6aa 437
reesey 1:3b00679c208a 438 void starwars_example(){
reesey 1:3b00679c208a 439 firstSection();
reesey 1:3b00679c208a 440
reesey 1:3b00679c208a 441 secondSection();
reesey 1:3b00679c208a 442
reesey 1:3b00679c208a 443 //Variant 1
reesey 1:3b00679c208a 444 tone(f, 250);
reesey 1:3b00679c208a 445 tone(gS, 500);
reesey 1:3b00679c208a 446 tone(f, 350);
reesey 1:3b00679c208a 447 tone(a, 125);
reesey 1:3b00679c208a 448 tone(cH, 500);
reesey 1:3b00679c208a 449 tone(a, 375);
reesey 1:3b00679c208a 450 tone(cH, 125);
reesey 1:3b00679c208a 451 tone(eH, 650);
reesey 1:3b00679c208a 452 wait_ms(500);
reesey 1:3b00679c208a 453
reesey 1:3b00679c208a 454 secondSection();
reesey 1:3b00679c208a 455
reesey 1:3b00679c208a 456 //Variant 2
reesey 1:3b00679c208a 457 tone(f, 250);
reesey 1:3b00679c208a 458 tone(gS, 500);
reesey 1:3b00679c208a 459 tone(f, 375);
reesey 1:3b00679c208a 460 tone(cH, 125);
reesey 1:3b00679c208a 461 tone(a, 500);
reesey 1:3b00679c208a 462 tone(f, 375);
reesey 1:3b00679c208a 463 tone(cH, 125);
reesey 1:3b00679c208a 464 tone(a, 650);
reesey 1:3b00679c208a 465 wait_ms(650);
reesey 1:3b00679c208a 466 }