Музыкальный дверной звонок
- Dmitry Dubrovenko
- Поставщик валерьянки для Кота
- Сообщения: 2349
- Зарегистрирован: Вс янв 09, 2011 16:51:39
- Откуда: Санкт-Ленинград
- Контактная информация:
Re: Музыкальный дверной звонок
ICQ нет, и, в ближайшее время, не будет.
Re: Музыкальный дверной звонок
Уважаемый kostya13, восстановите пожалуйста ссылку на проект. Ссылка из статьи неактивна.
-
bedjamen
- Первый раз сказал Мяу!
- Сообщения: 28
- Зарегистрирован: Ср окт 13, 2010 18:26:30
- Откуда: Вологда
Re: Музыкальный дверной звонок
Как уменьшить паузу перед началом воспроизведения? Типа звонок запустился, но мелодия начинает играть через две, три секунды. Хотелось бы сразу.
Мои поделки за последние несколько лет.
https://yadi.sk/d/4_KITmRVcARCX
https://yadi.sk/d/4_KITmRVcARCX
- waddds
- Нашел транзистор. Понюхал.
- Сообщения: 167
- Зарегистрирован: Сб дек 27, 2008 15:46:26
- Откуда: Украина, Бердянск
- Контактная информация:
Re: Музыкальный дверной звонок
[uquote="kostya13",url="/forum/viewtopic.php?p=1962671#p1962671"]Будет 
Итак, у нас есть таблица, допустим из 256 значений синусоиды.
Если индекс = 1 ( т.е. приращение указателя, который берет значения из таблицы) это позволяет генерировать звук частотой F = (T0CLK/510/256).
256 - количество данных в таблице, максимальное 510 количество значений счетчика.
Этот то, что было в прошлом примере.
Если мы будем увеличивать индекс на 2, то весь массив будет пройден вдвое быстрее, т.е. получим частоту F*2 , если будем увеличивать индекс на 3, то получим частоту F*3.
Полностью здесь автор "САБ" даже с расчетами объясненяет как зависит частота от шага выборки:
http://chipenable.ru/index.php/forum/2- ... -shim.html
Надо понять как этот пример работает.
Т.е. имея всего лишь одну таблицу можно по ней генерировать звук в большом диапазоне частот.
Вопросы?[/uquote]
Вопрос не совсем про заонок... Больше по практической реализации синтеза многоголосого звучания. Вообще меня изначально заинтересовала другая конструкция (сенсорное пианино В.Тимофеева на Pic16f88). Вернее не весь проект, а именно полифония шимом. У Вас, если не ошибаюсь, тот же принцип используется? Или я чего то не понимаю,или неправильно считаю... Частота прерываний выбрана 19500 кГц.
Есть массив на 64 точки мгновенных значений амплитуды синусоиды. Если с частотой прерываний прочитать 64 точки, получим на выходе 305 Гц. Если каждую вторую, то 710 Гц. Каждую третью - 1015 Гц. Получаем ряд частот с шагом 305 Гц.(примерно). Попадание в частоты каждого полутона звукоряда начинается где то с чтения каждой 13 точки. И это уже 5 октава. Максимальная частота около 9.46 кГц при каждой 31 точке. При 32 получается прямая линия. Больше 32 вообще одно изменение на период. Синусоидой уже и не пахнет. То есть Реально можно получить полторы октавы довольно высокого писка. Можно и больше вниз, но не будем попадать в частоты нот. А у автора используется три октавы, и судч по звучанию в ролике ориентировочно с 1 по 3 октаву. Как???
И как повышение частоты прерываний улучшит ситуацию?
По ссылке, поиведенной в цитируемом посте тоже используется 64 точки. И указана идеальная частота выборки значений из таблицы 44 кГц. Так в этом случае дискретность получаемых частот будет около 690 Гц ? И очень высокие звуки. Где я ошибаюсь? Хочу сам програмно попробовать этот метод, но что то не клеится с расчетами...
Итак, у нас есть таблица, допустим из 256 значений синусоиды.
Если индекс = 1 ( т.е. приращение указателя, который берет значения из таблицы) это позволяет генерировать звук частотой F = (T0CLK/510/256).
256 - количество данных в таблице, максимальное 510 количество значений счетчика.
Этот то, что было в прошлом примере.
Если мы будем увеличивать индекс на 2, то весь массив будет пройден вдвое быстрее, т.е. получим частоту F*2 , если будем увеличивать индекс на 3, то получим частоту F*3.
Полностью здесь автор "САБ" даже с расчетами объясненяет как зависит частота от шага выборки:
http://chipenable.ru/index.php/forum/2- ... -shim.html
Надо понять как этот пример работает.
Т.е. имея всего лишь одну таблицу можно по ней генерировать звук в большом диапазоне частот.
Вопросы?[/uquote]
Вопрос не совсем про заонок... Больше по практической реализации синтеза многоголосого звучания. Вообще меня изначально заинтересовала другая конструкция (сенсорное пианино В.Тимофеева на Pic16f88). Вернее не весь проект, а именно полифония шимом. У Вас, если не ошибаюсь, тот же принцип используется? Или я чего то не понимаю,или неправильно считаю... Частота прерываний выбрана 19500 кГц.
Есть массив на 64 точки мгновенных значений амплитуды синусоиды. Если с частотой прерываний прочитать 64 точки, получим на выходе 305 Гц. Если каждую вторую, то 710 Гц. Каждую третью - 1015 Гц. Получаем ряд частот с шагом 305 Гц.(примерно). Попадание в частоты каждого полутона звукоряда начинается где то с чтения каждой 13 точки. И это уже 5 октава. Максимальная частота около 9.46 кГц при каждой 31 точке. При 32 получается прямая линия. Больше 32 вообще одно изменение на период. Синусоидой уже и не пахнет. То есть Реально можно получить полторы октавы довольно высокого писка. Можно и больше вниз, но не будем попадать в частоты нот. А у автора используется три октавы, и судч по звучанию в ролике ориентировочно с 1 по 3 октаву. Как???
И как повышение частоты прерываний улучшит ситуацию?
По ссылке, поиведенной в цитируемом посте тоже используется 64 точки. И указана идеальная частота выборки значений из таблицы 44 кГц. Так в этом случае дискретность получаемых частот будет около 690 Гц ? И очень высокие звуки. Где я ошибаюсь? Хочу сам програмно попробовать этот метод, но что то не клеится с расчетами...
учиться никогда не поздно...