Звуковое подтверждение нажатия кнопки
- Войдите на сайт для отправки комментариев
Вс, 18/12/2016 - 23:08
В проекте 7 кнопок. Хочется сделать звуковое подтверждение нажатия. Что-нибудь типа DTMF, но можно и одинаковое для всех кнопок.
Пока банально tone(6, 1000,30), но хочется что-то поинтереснее. Никто не посоветует?
Пока банально tone(6, 1000,30), но хочется что-то поинтереснее. Никто не посоветует?
Если мало одного tone, примените последовательность разных tone. Но вся пляска начинается от того , какую вы структуру в программе организуете. А то хотели как лучше, а пришли , прости господи, к говнокоду.
но хочется что-то поинтереснее. Никто не посоветует?
гимн наРоссии или Боже Царя Храни?
Если мало одного tone, примените последовательность разных tone. Но вся пляска начинается от того , какую вы структуру в программе организуете. А то хотели как лучше, а пришли , прости господи, к говнокоду.
Подскажите какую-нибудь интересную последовательность тонов. А то я на этом и завис.
Опыт реализовать в фоновом режиме любой последовательность дрыгоножества - имеется, к говонокоду не должен скатиться.
Клапауций 234, спасибо за Ваше искрометное чувство юмора. Я же написал - типа DTMF. Реализовать двутон на Arduino, без аппаратных костылей возможности не вижу.
Если мало одного tone, примените последовательность разных tone. Но вся пляска начинается от того , какую вы структуру в программе организуете. А то хотели как лучше, а пришли , прости господи, к говнокоду.
Подскажите какую-нибудь интересную последовательность тонов. А то я на этом и завис.
Опыт реализовать в фоновом режиме любой последовательность дрыгоножества - имеется, к говонокоду не должен скатиться.
http://arduino.ru/forum/programmirovanie/arkhiv-melodii-dlya-funktsii-tone . А мелодий полный инет.
Да для очень (цензура) . Вы смотрите на мою ссылку.
qwone, мне не нужны мелодии - у меня их в количестве. Мне нужен пример простого (???) звука (реализации его для ардуины не надо, просто частота-длительность-пауза - длительность и пр...) длительность до 100мс, который бы можно было использовать как сигнал отклика кнопок, вместо треска или однотонального
Sr.FatCat
// Midi To Arduino play music speaker Piezo. #include <EEPROM.h> int tonePin = 11; byte reset; void setup() { pinMode(13, OUTPUT); EEPROM.write(0, reset = EEPROM.read(0) + 1); if (reset > 5)EEPROM.write(0, 0); } void loop() { if (reset == 1)ParovozSolo(); if (reset == 2)JoyToTheWorld(); if (reset == 3)WeWishYouAMerry(); if (reset == 4)RudolfTheRedNosed(); if (reset == 5)JingleBells(); if (reset == 6 || digitalRead(13)) { digitalWrite(13, HIGH); if (++reset > 5)reset = 1; } } void ParovozSolo() { tone(tonePin, 329, 337.5); delay(375.0); delay(41.6666666667); tone(tonePin, 329, 1012.5); delay(1125.0); delay(125.0); tone(tonePin, 440, 168.75); delay(187.5); delay(20.8333333333); tone(tonePin, 391, 168.75); delay(187.5); delay(20.8333333333); tone(tonePin, 349, 675.0); delay(750.0); delay(83.3333333333); tone(tonePin, 293, 337.5); delay(375.0); delay(41.6666666667); tone(tonePin, 261, 337.5); delay(375.0); delay(41.6666666667); tone(tonePin, 246, 337.5); delay(375.0); delay(41.6666666667); tone(tonePin, 329, 675.0); delay(750.0); delay(83.3333333333); tone(tonePin, 293, 337.5); delay(375.0); delay(41.6666666667); tone(tonePin, 261, 337.5); delay(375.0); delay(41.6666666667); tone(tonePin, 220, 675.0); delay(750.0); delay(83.3333333333); tone(tonePin, 391, 337.5); delay(375.0); delay(41.6666666667); tone(tonePin, 391, 506.25); delay(562.5); delay(62.5); tone(tonePin, 261, 506.25); delay(562.5); delay(62.5); tone(tonePin, 329, 337.5); delay(375.0); delay(41.6666666667); tone(tonePin, 391, 337.5); delay(375.0); delay(41.6666666667); tone(tonePin, 523, 337.5); delay(375.0); delay(41.6666666667); tone(tonePin, 493, 337.5); delay(375.0); delay(41.6666666667); tone(tonePin, 440, 337.5); delay(375.0); delay(41.6666666667); tone(tonePin, 415, 1350.0); delay(1500.0); delay(1416.66666667); tone(tonePin, 329, 337.5); delay(375.0); delay(41.6666666667); tone(tonePin, 523, 675.0); delay(750.0); delay(83.3333333333); tone(tonePin, 493, 337.5); delay(375.0); delay(41.6666666667); tone(tonePin, 523, 337.5); delay(375.0); delay(41.6666666667); tone(tonePin, 493, 337.5); delay(375.0); delay(41.6666666667); tone(tonePin, 440, 675.0); delay(750.0); delay(83.3333333333); tone(tonePin, 329, 337.5); delay(375.0); delay(41.6666666667); tone(tonePin, 440, 337.5); delay(375.0); delay(41.6666666667); tone(tonePin, 440, 337.5); delay(375.0); delay(41.6666666667); tone(tonePin, 391, 337.5); delay(375.0); delay(41.6666666667); tone(tonePin, 440, 337.5); delay(375.0); delay(41.6666666667); tone(tonePin, 391, 337.5); delay(375.0); delay(41.6666666667); tone(tonePin, 349, 675.0); delay(750.0); delay(83.3333333333); tone(tonePin, 349, 337.5); delay(375.0); delay(41.6666666667); tone(tonePin, 329, 675.0); delay(750.0); delay(83.3333333333); tone(tonePin, 391, 337.5); delay(375.0); delay(41.6666666667); tone(tonePin, 349, 337.5); delay(375.0); delay(41.6666666667); tone(tonePin, 329, 337.5); delay(375.0); delay(41.6666666667); tone(tonePin, 293, 337.5); delay(375.0); delay(41.6666666667); tone(tonePin, 261, 337.5); delay(375.0); delay(41.6666666667); tone(tonePin, 246, 337.5); delay(375.0); delay(41.6666666667); tone(tonePin, 220, 1350.0); delay(1500.0); delay(1416.66666667); tone(tonePin, 329, 337.5); delay(375.0); delay(41.6666666667); tone(tonePin, 523, 675.0); delay(750.0); delay(83.3333333333); tone(tonePin, 493, 337.5); delay(375.0); delay(41.6666666667); tone(tonePin, 523, 337.5); delay(375.0); delay(41.6666666667); tone(tonePin, 493, 337.5); delay(375.0); delay(41.6666666667); tone(tonePin, 440, 675.0); delay(750.0); delay(83.3333333333); tone(tonePin, 329, 337.5); delay(375.0); delay(41.6666666667); tone(tonePin, 440, 337.5); delay(375.0); delay(41.6666666667); tone(tonePin, 440, 337.5); delay(375.0); delay(41.6666666667); tone(tonePin, 391, 337.5); delay(375.0); delay(41.6666666667); tone(tonePin, 440, 337.5); delay(375.0); delay(41.6666666667); tone(tonePin, 391, 337.5); delay(375.0); delay(41.6666666667); tone(tonePin, 349, 675.0); delay(750.0); delay(83.3333333333); tone(tonePin, 349, 337.5); delay(375.0); delay(41.6666666667); tone(tonePin, 329, 675.0); delay(750.0); delay(83.3333333333); tone(tonePin, 391, 337.5); delay(375.0); delay(41.6666666667); tone(tonePin, 349, 337.5); delay(375.0); delay(41.6666666667); tone(tonePin, 329, 337.5); delay(375.0); delay(41.6666666667); tone(tonePin, 293, 337.5); delay(375.0); delay(41.6666666667); tone(tonePin, 261, 337.5); delay(375.0); delay(41.6666666667); tone(tonePin, 246, 337.5); delay(375.0); delay(41.6666666667); tone(tonePin, 220, 1350.0); delay(1500.0); } void JoyToTheWorld() { tone(tonePin, 587, 450.0); delay(500.0); tone(tonePin, 554, 337.5); delay(375.0); tone(tonePin, 493, 112.5); delay(125.0); tone(tonePin, 440, 675.0); delay(750.0); tone(tonePin, 391, 225.0); delay(250.0); tone(tonePin, 369, 450.0); delay(500.0); tone(tonePin, 329, 450.0); delay(500.0); tone(tonePin, 293, 675.0); delay(750.0); tone(tonePin, 440, 225.0); delay(250.0); tone(tonePin, 493, 670.3125); delay(744.791666667); delay(5.20833333333); tone(tonePin, 493, 225.0); delay(250.0); tone(tonePin, 554, 670.3125); delay(744.791666667); delay(5.20833333333); tone(tonePin, 554, 225.0); delay(250.0); tone(tonePin, 587, 670.3125); delay(744.791666667); delay(5.20833333333); tone(tonePin, 587, 220.3125); delay(244.791666667); delay(5.20833333333); tone(tonePin, 587, 225.0); delay(250.0); tone(tonePin, 554, 225.0); delay(250.0); tone(tonePin, 493, 225.0); delay(250.0); tone(tonePin, 440, 220.3125); delay(244.791666667); delay(5.20833333333); tone(tonePin, 440, 337.5); delay(375.0); tone(tonePin, 391, 112.5); delay(125.0); tone(tonePin, 369, 225.0); delay(250.0); tone(tonePin, 587, 220.3125); delay(244.791666667); delay(5.20833333333); tone(tonePin, 587, 225.0); delay(250.0); tone(tonePin, 554, 225.0); delay(250.0); tone(tonePin, 493, 225.0); delay(250.0); tone(tonePin, 440, 220.3125); delay(244.791666667); delay(5.20833333333); tone(tonePin, 440, 337.5); delay(375.0); tone(tonePin, 391, 112.5); delay(125.0); tone(tonePin, 369, 220.3125); delay(244.791666667); delay(5.20833333333); tone(tonePin, 369, 220.3125); delay(244.791666667); delay(5.20833333333); tone(tonePin, 369, 220.3125); delay(244.791666667); delay(5.20833333333); tone(tonePin, 369, 220.3125); delay(244.791666667); delay(5.20833333333); tone(tonePin, 369, 220.3125); delay(244.791666667); delay(5.20833333333); tone(tonePin, 369, 112.5); delay(125.0); tone(tonePin, 391, 112.5); delay(125.0); tone(tonePin, 440, 675.0); delay(750.0); tone(tonePin, 391, 112.5); delay(125.0); tone(tonePin, 369, 112.5); delay(125.0); tone(tonePin, 329, 220.3125); delay(244.791666667); delay(5.20833333333); tone(tonePin, 329, 220.3125); delay(244.791666667); delay(5.20833333333); tone(tonePin, 329, 220.3125); delay(244.791666667); delay(5.20833333333); tone(tonePin, 329, 112.5); delay(125.0); tone(tonePin, 369, 112.5); delay(125.0); tone(tonePin, 391, 675.0); delay(750.0); tone(tonePin, 369, 112.5); delay(125.0); tone(tonePin, 329, 112.5); delay(125.0); tone(tonePin, 293, 225.0); delay(250.0); tone(tonePin, 587, 450.0); delay(500.0); tone(tonePin, 493, 225.0); delay(250.0); tone(tonePin, 440, 337.5); delay(375.0); tone(tonePin, 391, 112.5); delay(125.0); tone(tonePin, 369, 225.0); delay(250.0); tone(tonePin, 391, 225.0); delay(250.0); tone(tonePin, 369, 450.0); delay(500.0); tone(tonePin, 329, 450.0); delay(500.0); } //Как с вами сложно. Видно на фоорум приходят как правило с отсутсвующим мозгом.
Где tonePin это нога для звучания, 329 частота ноты,337.5 длительность звучания ноты. 375.0 длительность звучание ноты и паузы до начала следующей ноты.
То есть берете мелодию,заходите на сайт, получаете скетчь готовый разбираете на элементы и с помощью этих элементов собираете свою мелодию.
Для очень одареных, там есть регулирование скорости воспроизведения. Так что можете обычную мелодию сжать по времени. Трель в 3-4 ноты за 0,2 сек замечательно. Ну не может человек по кнопкам чаще бить.
Ну не может человек по кнопкам чаще бить.
Та ладно, обученный секретарь печатает 5тыщ знаков в минуту. Правда такая х-ня получается.))))
qwone, вот спасибо, что Вы тут со слабоумными возитесь. Я всего-навсего просил пример где 2-3 ноты общей продолжительностью до 100мс, которые при реакции на нажатие кнопки давали бы интересный звук. Ну нет у мени ни слуха, ни фантазии - не могу сам придумать.
А программную реализацию я не просил - куда мне убогому. Ведь только такому гуру программирования, как Вы дано знать зачем формальному параметру типа unsigned long пихать вещественную константу (3-й параметр в tone и единственный параметр в delay). А на то, чтобы длительность паузы делать сразу двумя делаями - это вообще УМИЩЕ надо.
Ну пусть кто-нибудь напишет словами Ля-диез 1-й октавы, си-бимоль 3-й, темп 120..... или частота 255 длительность 30 пауза 10, частота 1264 длительность 80 ....
меня это устроит более, чем