Hi,
This new tone lib is very cool
Thanks a lot !
Here below a sample of french movie picture melody.
#define o3C 262
#define o3Cd 277
#define o3D 294
#define o3Dd 311
#define o3E 330
#define o3F 349
#define o3Fd 370
#define o3G 392
#define o3Gd 415
#define o3A 440
#define o3Ad 466
#define o3B 494
#define o4C 523
#define o4Cd 554
#define o4D 587
#define o4Dd 622
#define o4E 659
#define o4F 698
#define o4Fd 740
#define o4G 784
#define o4Gd 830
#define o4A 880
#define o4Ad 932
#define o4B 988
#define ooo 0
#include <NewTone.h>
#define TONE_PIN 12
int tempo = 650;
// freq,duration, etc ..
int measures[] =
{
o3A,4,o3A,4,o3A,4,o3A,4,
o3A,8,o3Gd,8,o3A,8,o3B,8,o4C,2,
o3B,8,o4D,8,o4C,3,o3B,8,o3A,8,o3Gd,8,
o3A,8,o4E,8,o4C,8,o4E,8,o3A,8,o3E,8,o3Fd,8,o3Gd,8,
o3A,4,o3A,4,o3A,4,o3A,4,
o3A,8,o3Gd,8,o3A,8,o3B,8,o4C,2,
o3B,8,o4D,8,o4C,3,o3B,8,o3A,8,o3Gd,8,
o3A,8,o4E,8,o4C,8,o4E,8,o3A,2,
o4D,4,o4D,4,o4D,4,o4D,4,
o4D,8,o4Cd,8,o4D,8,o4E,8,o4F,2,
o4C,4,o4C,4,o4C,4,o4C,4,
o4C,8,o3B,8,o4C,8,o4D,8,o4E,2,
o3Ad,4,o3Ad,4,o3Ad,4,o3Ad,4,
o3Ad,8,o3A,8,o3B,8,o4C,8,o4D,8,o4C,8,o3B,8,o4D,8,
o3A,8,o3E,8,o3Fd,8,o3Gd,8,o3A,8,o4E,8,o4C,8,o4E,8,
o3A,2,ooo,4
};
void setup() {}
void loop()
{
for (int i = 0; i < sizeof(measures)/2; i=i+2)
{
if (measures[i]>0) NewTone(TONE_PIN, measures[i], tempo/measures[i+1]);
delay(tempo/measures[i+1] * 1.333);
}
noNewTone(TONE_PIN);
}
I would like to made some music to my robot, but I can't use virtualwire lib with new tone lib because timers is sames for both libraries.
I've found another servo lib than original who have same problem. This is fixed.
( it is sofware servo: Arduino Playground - Servo)
But not with virtual wire.
Virtual wire use timer1 (16 bits resolution). NewTone lib too.
some informations found about timers here:
http://letsmakerobots.com/node/28278
It is possible to unusable or change timer ?
thx