Имеется запись в setup при подаче питания проигрывается мелодия один раз но запись получается слишком большая как уменьшить размер? Может можно как то избавиться от постоянного delay и как вадно мелодия состоит из двух одинаковых частей ! Код (C++): pinMode(soundPin, OUTPUT); // tone(pin, note, duration) tone(10, 3520.0, 501); delay(50); tone(10, 3135.96, 50); delay(50); tone(10, 2637.02, 50); delay(50); tone(10, 2093.00, 50); delay(50); tone(10, 2349.32, 50); delay(50); tone(10, 3951.07, 50); delay(50); tone(10, 2793.83, 50); delay(50); tone(10, 4186.01, 50); delay(50); tone(10, 3520.01, 50); delay(50); tone(10, 3135.96, 50); delay(50); tone(10, 2637.02, 50); delay(50); tone(10, 2093.00, 50); delay(50); tone(10, 2349.32, 50); delay(50); tone(10, 3951.07, 50); delay(50); tone(10, 2793.83, 50); delay(50); tone(10, 4186.01, 50);
вообщем сделал! это до - Скетч использует 7 448 байт (103%) памяти устройства. Всего доступно 7 168 байт. это после - Скетч использует 7 110 байт (99%) памяти устройства. Всего доступно 7 168 байт. запись получилась вот такая int frequences[16] = {3520, 3135, 2637, 2093, 2349, 3951, 2793, 4186, 3520, 3135, 2637, 2093, 2349, 3951, 2793, 4186}; // мелодия старта int durations = 50; int soundPin = 10; void setup(){ for (int i=0; i<16; i++) { tone(soundPin, frequences, durations); delay (50); } }
Добавь еще speed [0-1.0] и все durations и delay помножай на (1-speed) 0 - нормальная скорость 0.5 - порезвее 0.9 - быстро
Фальшивит расстроенный инструмент))) Тут наверное пропущено. Код (C++): tone(soundPin, frequences[i], durations); В старой книжке читал, что данных в программе должно быть гораздо больше чем методов. Т.е. методы, реализуют базовые операции решаемой задачи, а данные рулят процессом. И в общем менять данные должно быть проще, чем код. Еще можно вместо нот проиграть кусок кода))) И данные которые нужны только для запуска можно собрать в union с прочими переменными, которые позже понадобятся.
Все в порядке) играет как надо издает звук "аля" r2d2 все ноты одинаковой длительности с одинаковыми паузами