#include "pt.h" // include protothread library
#include "timer.h"
static struct pt ptreplaceMe611347;
static struct timer treplaceMe611347;
int tonePin = 11;
boolean enablePtreplaceMe611347 = true;
void setup()
{
PT_INIT(&ptreplaceMe611347); // protothread variable
PT_INIT(&treplaceMe611347);
}
void loop()
{
protothreadreplaceMe611347(&ptreplaceMe611347); // schedule the protothread
}
static PT_THREAD(protothreadreplaceMe611347(struct pt *pt))
{
PT_BEGIN(pt);
while (enablePtreplaceMe611347) {
tone(tonePin, 277, 526.68515625);
timer_set(&treplaceMe611347, 585.205729167); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 311, 239.641746094);
timer_set(&treplaceMe611347, 266.268606771); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 14.6301432292); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 329, 418.714699219);
timer_set(&treplaceMe611347, 465.238554688); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 73.1507161458); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 466, 484.55034375);
timer_set(&treplaceMe611347, 538.389270833); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 32.1863151042); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 415, 495.084046875);
timer_set(&treplaceMe611347, 550.093385417); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 23.4082291667); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 493, 1740.69444141);
timer_set(&treplaceMe611347, 1934.1049349); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 23.4082291667); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 277, 492.450621094);
timer_set(&treplaceMe611347, 547.167356771); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 14.6301432292); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 311, 260.709152344);
timer_set(&treplaceMe611347, 289.676835938); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 2.92602864583); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 329, 481.916917969);
timer_set(&treplaceMe611347, 535.463242187); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 35.11234375); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 466, 495.084046875);
timer_set(&treplaceMe611347, 550.093385417); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 11.7041145833); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 415, 2096.20692188);
timer_set(&treplaceMe611347, 2329.11880208); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 178.487747396); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 277, 513.518027344);
timer_set(&treplaceMe611347, 570.575585938); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 311, 234.374894531);
timer_set(&treplaceMe611347, 260.416549479); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 8.7780859375); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 329, 463.4829375);
timer_set(&treplaceMe611347, 514.981041667); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 38.0383723958); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 466, 502.984324219);
timer_set(&treplaceMe611347, 558.871471354); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 11.7041145833); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 415, 476.650066406);
timer_set(&treplaceMe611347, 529.611184896); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 23.4082291667); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 493, 1630.09055859);
timer_set(&treplaceMe611347, 1811.21173177); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 175.56171875); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 493, 484.55034375);
timer_set(&treplaceMe611347, 538.389270833); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 11.7041145833); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 283.824778646); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 415, 7.90027734375);
timer_set(&treplaceMe611347, 8.7780859375); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 329, 463.4829375);
timer_set(&treplaceMe611347, 514.981041667); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 46.8164583333); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 311, 495.084046875);
timer_set(&treplaceMe611347, 550.093385417); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 2.92602864583); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 277, 966.467261719);
timer_set(&treplaceMe611347, 1073.85251302); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 35.11234375); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 207, 168.53925);
timer_set(&treplaceMe611347, 187.265833333); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 93.6329166667); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 184, 234.374894531);
timer_set(&treplaceMe611347, 260.416549479); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 20.4822005208); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 207, 505.61775);
timer_set(&treplaceMe611347, 561.7975); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 311, 3539.32425);
timer_set(&treplaceMe611347, 3932.5825); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 845.622278646); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 277, 526.68515625);
timer_set(&treplaceMe611347, 585.205729167); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 311, 239.641746094);
timer_set(&treplaceMe611347, 266.268606771); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 14.6301432292); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 329, 418.714699219);
timer_set(&treplaceMe611347, 465.238554688); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 73.1507161458); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 466, 484.55034375);
timer_set(&treplaceMe611347, 538.389270833); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 32.1863151042); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 415, 495.084046875);
timer_set(&treplaceMe611347, 550.093385417); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 23.4082291667); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 493, 1740.69444141);
timer_set(&treplaceMe611347, 1934.1049349); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 23.4082291667); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 277, 492.450621094);
timer_set(&treplaceMe611347, 547.167356771); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 14.6301432292); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 311, 260.709152344);
timer_set(&treplaceMe611347, 289.676835938); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 2.92602864583); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 329, 481.916917969);
timer_set(&treplaceMe611347, 535.463242187); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 35.11234375); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 466, 495.084046875);
timer_set(&treplaceMe611347, 550.093385417); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 11.7041145833); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 415, 2096.20692188);
timer_set(&treplaceMe611347, 2329.11880208); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 178.487747396); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 277, 513.518027344);
timer_set(&treplaceMe611347, 570.575585938); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 311, 234.374894531);
timer_set(&treplaceMe611347, 260.416549479); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 8.7780859375); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 329, 463.4829375);
timer_set(&treplaceMe611347, 514.981041667); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 38.0383723958); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 466, 502.984324219);
timer_set(&treplaceMe611347, 558.871471354); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 11.7041145833); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 415, 476.650066406);
timer_set(&treplaceMe611347, 529.611184896); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 23.4082291667); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 493, 1630.09055859);
timer_set(&treplaceMe611347, 1811.21173177); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 175.56171875); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 493, 484.55034375);
timer_set(&treplaceMe611347, 538.389270833); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 11.7041145833); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 283.824778646); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 415, 7.90027734375);
timer_set(&treplaceMe611347, 8.7780859375); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 329, 463.4829375);
timer_set(&treplaceMe611347, 514.981041667); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 46.8164583333); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 311, 495.084046875);
timer_set(&treplaceMe611347, 550.093385417); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 2.92602864583); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 277, 966.467261719);
timer_set(&treplaceMe611347, 1073.85251302); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 35.11234375); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 207, 168.53925);
timer_set(&treplaceMe611347, 187.265833333); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 93.6329166667); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 184, 234.374894531);
timer_set(&treplaceMe611347, 260.416549479); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 20.4822005208); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 207, 505.61775);
timer_set(&treplaceMe611347, 561.7975); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 311, 3539.32425);
timer_set(&treplaceMe611347, 3932.5825); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 1123.595); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 311, 200.140359375);
timer_set(&treplaceMe611347, 222.378177083); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 81.9288020833); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 311, 265.976003906);
timer_set(&treplaceMe611347, 295.528893229); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 79.0027734375); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 311, 379.2133125);
timer_set(&treplaceMe611347, 421.348125); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 35.11234375); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 369, 2172.57626953);
timer_set(&treplaceMe611347, 2413.97363281); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 667.13453125); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 466, 492.450621094);
timer_set(&treplaceMe611347, 547.167356771); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 49.7424869792); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 369, 252.808875);
timer_set(&treplaceMe611347, 280.89875); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 23.4082291667); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 311, 421.348125);
timer_set(&treplaceMe611347, 468.164583333); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 35.11234375); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 369, 2272.64644922);
timer_set(&treplaceMe611347, 2525.16272135); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 561.7975); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 466, 474.016640625);
timer_set(&treplaceMe611347, 526.68515625); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 38.0383723958); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 369, 221.207765625);
timer_set(&treplaceMe611347, 245.78640625); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 67.2986588542); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 311, 421.348125);
timer_set(&treplaceMe611347, 468.164583333); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 49.7424869792); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 1413.27183594); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 369, 31.601109375);
timer_set(&treplaceMe611347, 35.11234375); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 311, 431.881828125);
timer_set(&treplaceMe611347, 479.868697917); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 38.0383723958); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 369, 429.248402344);
timer_set(&treplaceMe611347, 476.942669271); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 70.2246875); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 304.306979167); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 311, 84.269625);
timer_set(&treplaceMe611347, 93.6329166667); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 277, 1761.76184766);
timer_set(&treplaceMe611347, 1957.51316406); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 2727.05869792); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 277, 526.68515625);
timer_set(&treplaceMe611347, 585.205729167); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 311, 239.641746094);
timer_set(&treplaceMe611347, 266.268606771); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 14.6301432292); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 329, 418.714699219);
timer_set(&treplaceMe611347, 465.238554688); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 73.1507161458); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 466, 484.55034375);
timer_set(&treplaceMe611347, 538.389270833); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 32.1863151042); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 415, 495.084046875);
timer_set(&treplaceMe611347, 550.093385417); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 23.4082291667); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 493, 1740.69444141);
timer_set(&treplaceMe611347, 1934.1049349); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 23.4082291667); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 277, 492.450621094);
timer_set(&treplaceMe611347, 547.167356771); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 14.6301432292); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 311, 260.709152344);
timer_set(&treplaceMe611347, 289.676835938); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 2.92602864583); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 329, 481.916917969);
timer_set(&treplaceMe611347, 535.463242187); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 35.11234375); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 466, 495.084046875);
timer_set(&treplaceMe611347, 550.093385417); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 11.7041145833); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 415, 2096.20692188);
timer_set(&treplaceMe611347, 2329.11880208); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 178.487747396); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 277, 513.518027344);
timer_set(&treplaceMe611347, 570.575585938); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 311, 234.374894531);
timer_set(&treplaceMe611347, 260.416549479); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 8.7780859375); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 329, 463.4829375);
timer_set(&treplaceMe611347, 514.981041667); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 38.0383723958); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 466, 502.984324219);
timer_set(&treplaceMe611347, 558.871471354); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 11.7041145833); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 415, 476.650066406);
timer_set(&treplaceMe611347, 529.611184896); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 23.4082291667); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 493, 1630.09055859);
timer_set(&treplaceMe611347, 1811.21173177); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 175.56171875); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 493, 484.55034375);
timer_set(&treplaceMe611347, 538.389270833); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 11.7041145833); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 283.824778646); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 415, 7.90027734375);
timer_set(&treplaceMe611347, 8.7780859375); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 329, 463.4829375);
timer_set(&treplaceMe611347, 514.981041667); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 46.8164583333); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 311, 495.084046875);
timer_set(&treplaceMe611347, 550.093385417); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 2.92602864583); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 277, 966.467261719);
timer_set(&treplaceMe611347, 1073.85251302); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 35.11234375); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 207, 168.53925);
timer_set(&treplaceMe611347, 187.265833333); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 93.6329166667); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 184, 234.374894531);
timer_set(&treplaceMe611347, 260.416549479); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 20.4822005208); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 207, 505.61775);
timer_set(&treplaceMe611347, 561.7975); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 311, 3539.32425);
timer_set(&treplaceMe611347, 3932.5825); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 23317.5222786); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 293, 526.68515625);
timer_set(&treplaceMe611347, 585.205729167); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 329, 239.641746094);
timer_set(&treplaceMe611347, 266.268606771); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 14.6301432292); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 349, 418.714699219);
timer_set(&treplaceMe611347, 465.238554688); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 73.1507161458); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 493, 484.55034375);
timer_set(&treplaceMe611347, 538.389270833); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 32.1863151042); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 440, 495.084046875);
timer_set(&treplaceMe611347, 550.093385417); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 23.4082291667); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 523, 1740.69444141);
timer_set(&treplaceMe611347, 1934.1049349); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 23.4082291667); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 293, 492.450621094);
timer_set(&treplaceMe611347, 547.167356771); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 14.6301432292); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 329, 260.709152344);
timer_set(&treplaceMe611347, 289.676835938); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 2.92602864583); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 349, 481.916917969);
timer_set(&treplaceMe611347, 535.463242187); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 35.11234375); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 493, 495.084046875);
timer_set(&treplaceMe611347, 550.093385417); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 11.7041145833); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 440, 2096.20692188);
timer_set(&treplaceMe611347, 2329.11880208); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 178.487747396); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 293, 513.518027344);
timer_set(&treplaceMe611347, 570.575585938); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 329, 234.374894531);
timer_set(&treplaceMe611347, 260.416549479); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 8.7780859375); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 349, 463.4829375);
timer_set(&treplaceMe611347, 514.981041667); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 38.0383723958); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 493, 502.984324219);
timer_set(&treplaceMe611347, 558.871471354); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 11.7041145833); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 440, 476.650066406);
timer_set(&treplaceMe611347, 529.611184896); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 23.4082291667); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 523, 1630.09055859);
timer_set(&treplaceMe611347, 1811.21173177); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 175.56171875); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 523, 484.55034375);
timer_set(&treplaceMe611347, 538.389270833); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 11.7041145833); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 283.824778646); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 440, 7.90027734375);
timer_set(&treplaceMe611347, 8.7780859375); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 349, 463.4829375);
timer_set(&treplaceMe611347, 514.981041667); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 46.8164583333); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 329, 495.084046875);
timer_set(&treplaceMe611347, 550.093385417); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 2.92602864583); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 293, 966.467261719);
timer_set(&treplaceMe611347, 1073.85251302); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 35.11234375); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 220, 168.53925);
timer_set(&treplaceMe611347, 187.265833333); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 93.6329166667); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 195, 234.374894531);
timer_set(&treplaceMe611347, 260.416549479); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 20.4822005208); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 220, 505.61775);
timer_set(&treplaceMe611347, 561.7975); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 329, 3539.32425);
timer_set(&treplaceMe611347, 3932.5825); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 1123.595); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 329, 200.140359375);
timer_set(&treplaceMe611347, 222.378177083); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 81.9288020833); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 329, 265.976003906);
timer_set(&treplaceMe611347, 295.528893229); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 79.0027734375); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 329, 379.2133125);
timer_set(&treplaceMe611347, 421.348125); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 35.11234375); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 391, 2172.57626953);
timer_set(&treplaceMe611347, 2413.97363281); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 667.13453125); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 493, 492.450621094);
timer_set(&treplaceMe611347, 547.167356771); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 49.7424869792); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 391, 252.808875);
timer_set(&treplaceMe611347, 280.89875); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 23.4082291667); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 329, 421.348125);
timer_set(&treplaceMe611347, 468.164583333); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 35.11234375); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 391, 2272.64644922);
timer_set(&treplaceMe611347, 2525.16272135); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 561.7975); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 493, 474.016640625);
timer_set(&treplaceMe611347, 526.68515625); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 38.0383723958); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 391, 221.207765625);
timer_set(&treplaceMe611347, 245.78640625); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 67.2986588542); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 329, 421.348125);
timer_set(&treplaceMe611347, 468.164583333); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 49.7424869792); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 1413.27183594); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 391, 31.601109375);
timer_set(&treplaceMe611347, 35.11234375); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 329, 431.881828125);
timer_set(&treplaceMe611347, 479.868697917); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 38.0383723958); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 391, 429.248402344);
timer_set(&treplaceMe611347, 476.942669271); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 70.2246875); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 304.306979167); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 329, 84.269625);
timer_set(&treplaceMe611347, 93.6329166667); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 293, 1761.76184766);
timer_set(&treplaceMe611347, 1957.51316406); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 2727.05869792); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 293, 526.68515625);
timer_set(&treplaceMe611347, 585.205729167); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 329, 239.641746094);
timer_set(&treplaceMe611347, 266.268606771); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 14.6301432292); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 349, 418.714699219);
timer_set(&treplaceMe611347, 465.238554688); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 73.1507161458); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 493, 484.55034375);
timer_set(&treplaceMe611347, 538.389270833); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 32.1863151042); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 440, 495.084046875);
timer_set(&treplaceMe611347, 550.093385417); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 23.4082291667); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 523, 1740.69444141);
timer_set(&treplaceMe611347, 1934.1049349); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 23.4082291667); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 293, 492.450621094);
timer_set(&treplaceMe611347, 547.167356771); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 14.6301432292); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 329, 260.709152344);
timer_set(&treplaceMe611347, 289.676835938); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 2.92602864583); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 349, 481.916917969);
timer_set(&treplaceMe611347, 535.463242187); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 35.11234375); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 493, 495.084046875);
timer_set(&treplaceMe611347, 550.093385417); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 11.7041145833); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 440, 2096.20692188);
timer_set(&treplaceMe611347, 2329.11880208); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 178.487747396); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 293, 513.518027344);
timer_set(&treplaceMe611347, 570.575585938); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 329, 234.374894531);
timer_set(&treplaceMe611347, 260.416549479); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 8.7780859375); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 349, 463.4829375);
timer_set(&treplaceMe611347, 514.981041667); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 38.0383723958); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 493, 502.984324219);
timer_set(&treplaceMe611347, 558.871471354); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 11.7041145833); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 440, 476.650066406);
timer_set(&treplaceMe611347, 529.611184896); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 23.4082291667); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 523, 1630.09055859);
timer_set(&treplaceMe611347, 1811.21173177); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 175.56171875); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 523, 484.55034375);
timer_set(&treplaceMe611347, 538.389270833); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 11.7041145833); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 283.824778646); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 440, 7.90027734375);
timer_set(&treplaceMe611347, 8.7780859375); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 349, 463.4829375);
timer_set(&treplaceMe611347, 514.981041667); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 46.8164583333); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 329, 495.084046875);
timer_set(&treplaceMe611347, 550.093385417); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 2.92602864583); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 293, 966.467261719);
timer_set(&treplaceMe611347, 1073.85251302); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 35.11234375); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 220, 168.53925);
timer_set(&treplaceMe611347, 187.265833333); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 93.6329166667); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 195, 234.374894531);
timer_set(&treplaceMe611347, 260.416549479); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
timer_set(&treplaceMe611347, 20.4822005208); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 220, 505.61775);
timer_set(&treplaceMe611347, 561.7975); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
tone(tonePin, 329, 3539.32425);
timer_set(&treplaceMe611347, 3932.5825); PT_WAIT_UNTIL(pt, timer_expired(&treplaceMe611347));
}
PT_END(pt);
}
@TheSphiz97, your topic was moved to a more suitable section of the forum.
Can you please edit your post, select all text and click the </>
button above the edit textbox and next save the edited post so we don't have to first select nearly 500 lines of code.
Can also please spend some time reading How to get the best out of this forum (again?).
Ohh Thank you so much, I already did, Excuse me, could you help me with this prodema in my code
Thanks for editing your post and adding the code tags.
Unfortunately I can't help with your problem else I would have done so. Just wait till somebody comes along that is familiar with the protothread library; hopefully there is someone.
Thank you very much, But maybe you know about another way to play Ringtones, without it interrupting with other parts of the code? .
It would help me a lot if you just give me some information in this regard.
My first guess (no experience with PT)…
Would be that the phrase ‘replaceme’ is supposed to be replaced with some specific term relevant to PT or your project.
The below will probably work. First create a struct that can hold the frequency and the duration of one tone in a melody; a struct is like a record in e.g. a phone book with a name and a phone number (and possibly more). In this case it will hold the frequency and the duration.
// a struct to combine a frequency and a duration for the tone() funcion
struct TONE
{
uint16_t freq;
uint32_t duration;
};
Note that you used a float number for the duration in your code; however, tone only works with unsigned longs (unt32_t) for the duration.
E.g.
tone(tonePin, 415, 495.084046875);
will effectively be
tone(tonePin, 415, 495);
Next create an array called e.g. melody with the frequencies and durations that you need
// the melody is an array of TONEs
TONE melody[] =
{
{277, 526},
{311, 239},
{466, 482},
{329, 418},
{466, 484},
// for you to complete
};
You will need a helper macro that can tell you how many tones there are in the melody.
// a macro to count the number of tones in an array of any type
#define NUMELEMENTS(x) (sizeof(x) / sizeof(x[0]))
And obviously you will need a definition of the tonePin
Your first part of the code will now look like
// a macro to count the number of tones in an array of any type
#define NUMELEMENTS(x) (sizeof(x) / sizeof(x[0]))
// the pin for the tone output
const byte tonePin = 11;
// a struct to combine a frequency and a duration for the tone() funcion
struct TONE
{
uint16_t freq;
uint32_t duration;
};
// the melody is an array of TONEs
TONE melody[] =
{
{277, 526},
{311, 239},
{466, 482},
{329, 418},
{466, 484},
// for you to complete
};
void setup()
{
// some debug information
Serial.begin(57600);
Serial.print(F("Starting melody with "));
Serial.print(NUMELEMENTS(melody));
Serial.println(F(" tones"));
}
void loop()
{
// todo
}
Next you can write a function to do a non-blocking playing of a tone; the principle is based on millis().
/*
play a tone from the melody
In:
index into melody array
Returns:
true when a tone has been finished, else false
*/
bool playTone(uint16_t index)
{
// start time when a tone was started
static uint32_t toneStartTime;
// keep track if playing a tone is in progress or not
static bool tonePlaying = false;
// if a tone was not playing
if (tonePlaying == false)
{
// set te flag
tonePlaying = true;
// record the start time
toneStartTime = millis();
// play the tone indefinitely; we will stop it later
tone(tonePin, melody[index].freq);
// debug info
Serial.print(toneStartTime);
Serial.print(F("\t"));
Serial.println(melody[index].freq);
}
else
{
// if the duration has lapsed
if (millis() - toneStartTime >= melody[index].duration)
{
// switch the tone off
noTone(tonePin);
// indcate that no tone is playing so a next call to this function will start a new tone from the melody
tonePlaying = false;
}
}
// indicate the status of the playing of the tone
return (!tonePlaying);
}
You can call this function from loop() as shown below
void loop()
{
// keep track of the tone in the melody
static uint16_t toneIndex = 0;
// play a tone of the melody
bool rc = playTone(toneIndex);
// if tone played for given duration
if (rc == true)
{
// next tone
toneIndex++;
// if all tones done
if (toneIndex >= NUMELEMENTS(melody))
{
// reset index so we can play melody again from the beginning
toneIndex = 0;
// inform user
Serial.println(F("Melody completed"));
// for demo purposes, wait a bit before starting again
delay(5000);
}
}
}
You can remove the serial stuff later on, it's there for debugging purposes and to try to make clear to you what is happening.
Please understand the code and ask if things are not clear. The maximum number of tones in a melody is around 65000.
This topic was automatically closed 120 days after the last reply. New replies are no longer allowed.