well... It was the mix of different programs. It is hard to understand
So, I tried to make the new code from the scratch.
char buffer[18]; //input buffer
int red, green, blue;
int RedPin = 9; // red LED
int GreenPin = 10; //green LED
int BluePin = 11; // Blue LED
int spkr = 13; // speaker output
int button = 7; // button
int numChar = Serial.available();
long previousMillis = 0; //interval
long interval = 5000;
void setup()
{
Serial.begin(9600); //serial port
Serial.flush();
pinMode(RedPin, OUTPUT);
pinMode(GreenPin, OUTPUT);
pinMode(BluePin, OUTPUT);
pinMode(spkr, OUTPUT);
pinMode(button, INPUT);
/*I can't manage with serial control of the tones.
And has a difficulties with logical operations to control a button
(I mean - if you press the button the frequency changes. If not -
"the interval" change the frequency)
The code to change the power of LEDs - not the problem.
I will add it later
*/
}
void loop()
{
tone (spkr, 1000, 2000); // tone 1
//here must be the code to change the colour of LEDs
if (millis() - previousMillis > interval);
tone (spkr, 2000, 2000); // tone 2
if (millis() - previousMillis > interval);
tone (spkr, 3000, 2000); // tone 3
if (millis() - previousMillis > interval);
tone (spkr, 4000, 2000); // tone 4
if (millis() - previousMillis > interval);
tone (spkr, 5000, 2000); // tone 5
if (millis() - previousMillis > interval);
tone (spkr, 6000, 2000); // tone 6
if (millis() - previousMillis > interval);
tone (spkr, 7000, 2000); // tone 7
if (millis() - previousMillis > interval);
tone (spkr, 8000, 2000); // tone 8
if (millis() - previousMillis > interval);
tone (spkr, 9000, 2000); // tone 9
if (millis() - previousMillis > interval);
tone (spkr, 10000, 2000); // tone 10
if (millis() - previousMillis > interval);
tone (spkr, 11000, 2000); // tone 11
if (millis() - previousMillis > interval);
tone (spkr, 12000, 2000); // tone 12
if (millis() - previousMillis > interval);
}