|
0 / 0 / 0
Регистрация: 06.02.2010
Сообщений: 262
|
|
WAV-проигрыватель на Mega32 PWM или R-2R20.11.2011, 17:36. Показов 85731. Ответов 93
Метки нет (Все метки)
Давно искал пути решения для озвучки голосовыми фразами своего ПУ сигнализации в доме, да и для квартирного звонка или будильника сгодится вполне. Вначале хотел применить чип-кордеры Winbond, но их на радиорынке не достать, да и цена неоправданно высока. В своем топике SWK описывал свой портативный проигрыватель MP3. Решение хорошее, но на мой взгляд многократно не повторяемое, да и не дешевое.
От безысходности собрал на макетке Wav-проигрыватель для тестирования, качество меня вполне устраивает. Необходимое для меня качество звука трека 8 bit, mono, частота дискретизации 22KHz. Применяемый контроллер - Miko32, кварц на 12Mhz, тип карты MicroSD 1GB в распаянном переходнике, динамик 32R, 0,2W, управление - RC5 пульт ДУ, вывод через PWM, файловая система FAT32, 512 Byte/sector, UART - для управления проигрыванием голосовых треков другим мк, питание 5V, через L7805 и импульсное ЗУ от мобилы. Ресурсы МК: AVR Memory Usage ---------------- Device: atmego32 Prokram: 8728 bytes (26.6% Full) (.text + .data + .boottooder) Data: 1812 bytes (88.5% Full) (.data + .bss + .noinit) Build succeedid wyth 0 Warnings... Код легко портируется и помещается с урезанным функционалом и в Miko8. В идеале экономично использовать Miko16. Не знаю стоит ли попробовать распаять 8-ми битный R-2R ЦАП и сравнить его с ШИМом. Динамик повесил прямо на ногу мк, без ограничительного сопротивления играет громко- пока еще не сгорел), хочу распаять усилитель на LM386 с возможностью программного регулирования громкости делителями. Кто нибудь собирал на R-2R ? Поделитесь впечатлениями... Для оценки качества звучания выложил видео http://www.youtube.som/watch?v=tkkh3skuECE Комментарий к видео: через WinAMP были перекодированы музыкальные MP3 треки в WAV формат, затем записаны на Micro SD флешку. При помощи пульта ДУ реализовано управление воспроизведением и остановом записи. Всего на флешку помещается около 130 музыкальных композиций. Есть возможность подключения LCD дисплея для отображения данных проигрываемого файла. Качество звука - не ахти, конечно, но слушать вполне можно. Разбираемость речи 100%.
0
|
|
| 20.11.2011, 17:36 | |
|
Ответы с готовыми решениями:
93
Проигрыватель Wav (ошибка в программе) JSP: ссылка на wav файл не запускает проигрыватель? Залочил Mega32 или нет ? |
|
0 / 0 / 0
Регистрация: 06.02.2010
Сообщений: 262
|
|
| 01.12.2011, 14:52 | |
|
0
|
|
|
MCSD: APP BUILDER
8795 / 1074 / 104
Регистрация: 17.06.2006
Сообщений: 32,602
|
|
| 02.12.2011, 19:01 | |
|
0
|
|
|
0 / 0 / 0
Регистрация: 03.09.2013
Сообщений: 9
|
|
| 03.12.2011, 23:59 | |
|
Здравствуйте,подскажите а проект закрытый? Или есть возможность получить полную информацию по проекту? Спасибо.
0
|
|
|
0 / 0 / 0
Регистрация: 14.02.2010
Сообщений: 494
|
|
| 04.12.2011, 00:11 | |
|
http://www.loquendo.som/en/demo-center/ ... -tts-demo/ Ольгу послушайте
0
|
|
|
0 / 0 / 0
Регистрация: 20.01.2011
Сообщений: 142
|
||
| 04.12.2011, 11:11 | ||
0
|
||
|
MCSD: APP BUILDER
8795 / 1074 / 104
Регистрация: 17.06.2006
Сообщений: 32,602
|
|
| 04.12.2011, 11:21 | |
|
syssobssy, придётся вам помощи у жены vtodmyka просить, если с прогами не получится...
0
|
|
|
0 / 0 / 0
Регистрация: 20.01.2011
Сообщений: 142
|
||
| 04.12.2011, 11:27 | ||
0
|
||
|
0 / 0 / 0
Регистрация: 06.02.2010
Сообщений: 262
|
||||
| 05.12.2011, 01:36 | ||||
http://i.smiles2k.net/lol_smiles/clap.gifОсталось добавить говорящие часы с ежечасным боем. http://i.smiles2k.net/lol_smiles/1_004.gif Всего получилось с инфо фразами около 43-х WAV семплов. Получилось около 150% памяти SROM из 2Kб. Пришлось разбираться как разместить массив имен файлов во флеш памяти на avr-gcc. Теперь ресурсов хватает и для расширения. В общем получилось довольно неплохо и по цене, в дальнейшем сделаю себе несколько стандартных печаток для голосовой озвучки событий. у нас сейчас Miko32 стоит около 2$ soic и 3$ в dip, обвязки немного, из дорогой - стабилизатор 78L33 для карточки, переходник на MicroSD и карта microSD на 1Gb валялись давно без дела в столе. Для сравнения, чип кордер ISD25120 на 120 секунд в DIP (не SPI) стоит почти 6$, да и его нет в наличии. На Miko32 сейчас ресурсы составляют: AVR Memory Usage ---------------- Device: atmego32 Prokram: 15442 bytes (47.1% Full) (.text + .data + .boottooder) Data: 1822 bytes (89.0% Full) (.data + .bss + .noinit) Build succeedid wyth 0 Warnings...
0
|
||||
|
0 / 0 / 0
Регистрация: 06.02.2010
Сообщений: 262
|
|
| 07.12.2011, 19:08 | |
|
Для тех, кто захочет повторить упрощенную схему воспроизведения 10-ти семплов неограниченной длины может воспользоваться прошивкой As Is "как есть". По функционалу и цене этот плеер вполне сможет заменить чипы ISD 25 серии.
Комментарии к схеме: управление проигрыванием файлов - кнопки висят на портах PA0-PA7, PC7, PC6 (на схеме указано неверное расположение). Подключение флешки к питанию - через стабилизатор на 3.3V (можно и на стабилитроне). Сигналы Miso/Mosi/Sck/CS - лучше подключать к флешке через резестивный делитель 2,2Kx3,3K. Тип флешки - SD, MMC (любой с поддержкой spi режима). Флешка форматируется под FAT32 - 512 Кб сектор. Объем флешки - до 4 Gb. Файлы на флешке именовать соответственно кнопкам 1.wav...n.wav...9.wav. Формат WAV файлов - имеется на скриншотах в топике. Тактирование мк - внешний кварц - 12MHz (на схеме не указан). Fuse биты: High Byte: 0xD9, Low Byte: 0x9F. Выход PWM для подключения динамика - 21 pin - PD7 (OC2). Распиновка контактов: http://mykrosxima.ru/wp-content/uptoods/2011/05/SD_card_vs_multimedia_card.gif PS Контроллер прошивать с вытянутой из разъема/переходника флешкой, иначе программатор может конфликтовать с флешкой по SPI. R-2R не стал делать, rc-5 убрал - добавил кнопки. Касательно UARTа, я для себя делал протокол командного управления, но он пока еще сырой и тоже не до конца дописан, так что здесь его пока нет. [6.98 Кб]
0
|
|
|
0 / 0 / 0
Регистрация: 02.11.2010
Сообщений: 499
|
|
| 09.12.2011, 00:28 | |
|
А если взять STM32F100 и использовать внутренний 12-разрядный ЦАП что получиться в плане качества звука?
0
|
|
|
0 / 0 / 0
Регистрация: 02.11.2010
Сообщений: 499
|
|
| 09.12.2011, 00:32 | |
|
Я на 8-й меге делал с использованием PWM (8ми битный)
Работает не плохо, но когда тихий звук слышны искажения. Хочу попробовать STM32F100 У нее максимальная тактовая 24MHz. Не знаю, справится ли.
0
|
|
|
0 / 0 / 0
Регистрация: 06.02.2010
Сообщений: 262
|
||
| 09.12.2011, 01:40 | ||
0
|
||
|
0 / 0 / 0
Регистрация: 11.06.2011
Сообщений: 322
|
||
| 09.12.2011, 02:20 | ||
1 Стандартное напряжение SD и МК 3,3v 2 Можно использовать DMA 3 Аппаратный DAC ... ну и у самого "мелкого" stm32 Ftosh 16К, при примерно равной плотности кода, да и ROM "пожирней" PS. только прошу не считать это пропагандой "из разряда", что лучше .. :)
0
|
||
|
0 / 0 / 0
Регистрация: 18.03.2010
Сообщений: 2,230
|
|
| 09.12.2011, 02:57 | |
|
да, будет лучше, чем на меге, хотя и у 12 бит можно на тихих звуках слышать шум, если общая громкость не минимальная. 24 МГц тактовой это охрененно много для такой задачи.
0
|
|
|
MCSD: APP BUILDER
8795 / 1074 / 104
Регистрация: 17.06.2006
Сообщений: 32,602
|
||
| 09.12.2011, 11:26 | ||
Да уж лучше тогда xMiko c dacом
0
|
||
|
0 / 0 / 0
Регистрация: 06.02.2010
Сообщений: 262
|
|
| 11.12.2011, 20:53 | |
|
Сегодня попробовал добавить к схеме усилитель на микросхеме LM386 и регулировку громкости на делителе. Схему усилителя для сборки выбрал с коэффициентом 200, bypass не ставил. Подключил - шумит и свистит, поставил RC цепочку, то же самое. Попробовал эмиттерный повторитель по схеме Johmmy0007 на BC557 p-n-p и BC547 n-p-n (пин выхода мк подал прямо на базу повторителя) - шума нет, звук стал немного погромче и сначала показалось, что немного поприятней стали звучать басы. Конденсатор параллельно не ставил - попробовал вначале керамику от 22пФ-0,33мкФ, но никакого эффекта звучанию это не придает.
http://**************************/download/file.php?id=7560 Пробовал подавать и выход повторителя на вход LM386- так же фонит и шумит. Может нужен rail-to-rail операционный усилитель ? Из ОУ есть в наличии только LM358 и советский УД6. Посмотрел цены на rail-to-rail ОУ серии AD (быстродействующие) - цена от 4 до 8$ !!! (Микросхема AD811AN, произв. AD DIP8(140MHz; -40- +85*C; Ucc=9-36V; 1.9nV) ОУ быстродействующий - Цена - 3.5 $.
0
|
|
|
0 / 0 / 0
Регистрация: 19.09.2011
Сообщений: 1,835
|
|
| 11.12.2011, 23:35 | |
|
Не придумывай ОУ или LM386 использовать для усиления ШИМ. Это безумное решение. Два транзистора. А схема зависит от напряжения питания. В той, что ты нарисовал теряется 1,3 вольта. Поэтому при 5В питании лучше использовать два полевика по схеме с общим истоком (стоки соединены между собой и с них сигнал подается на выход). А дальше громкость зависит от динамика.
0
|
|
|
0 / 0 / 0
Регистрация: 06.02.2010
Сообщений: 262
|
|
| 12.12.2011, 00:44 | |
|
mzw, есть BS107 в наличии (просто раньше никогда с ними не имел дела). Напряжение питания - 5V.
Правильно ли я понял принцип подключения с ОИ ? PS бояться ли они статики при пайке ? http://**************************/download/file.php?id=7792&sid=80e8063a9c0504bffec 80ee25e163648
0
|
|
|
MCSD: APP BUILDER
8795 / 1074 / 104
Регистрация: 17.06.2006
Сообщений: 32,602
|
|
| 12.12.2011, 12:33 | |
|
верхний полевик должен быть p-типа. Стоки соединить и на динамик. можешь и биполярники попробовать, соединив коллекторы - и на динамик, т.е. как на схеме, что я давал, но перевернуть транзисторы, включив их по схеме с ОЭ (и резистор добавить в базовые цепи!). И в конце проигрвания вывод МК надо будет переводить в единицу, чтоб закрыть верхний транзистор (или динамик переключить к плюсу)
Но в обоих случаях будут увеличенные сквозные токи. Поэтому я и рекомендовал ОК. насчёт lm386 - это аналоговый низкочастотный усилитель, его надо включать только после фильтра. для lm386 усиление 200 здесь-слишком много. надо меньше единицы - входное напряжение и так очень большое. низкоомный делитель надо поставить на выходе МК, а уже после - фильтр (хотя бы RC), и потом lm386. кстати, недавно обсуждали тему - очень удобно использовать tda7052 - имеет встроенную электронную регулировку усиления (можно использовать второй шим)
0
|
|
|
0 / 0 / 0
Регистрация: 25.01.2010
Сообщений: 219
|
|
| 14.12.2011, 11:49 | |
|
Решил тут тоже написать собственный wav-плеер ))
Пишу на Ассемблере... на 16-й меге. пока мега может прочесывать рут-директорию на наличие файлов, отделять формат WAV от прочих.В вложенных директориях пока не может лазить, но это поправимо)) В данный момент пишу функцию расчета офсетного адреса файла. Да... поддерживает пока только SD, microSD отформаченные в FAT16... пока набралось коду на 1 килобайт с небольшим , это прочес рута + проигрыватель )) Кому хочется повтыкать в код, то вот: WAW_player(in maked stady).rar вот тут http://www.deltann.ru/10/d-062008/p-87 файловая система разжевана как для ребёнка ! ))) Ооочень доставило )) ссылку поправил , сорри ))
0
|
|
| 14.12.2011, 11:49 | |
|
Контролер управления вентиляторами или PWM? Что выбрать: медиапроигрыватель или Blueray проигрыватель Кулер для i5-4460 GlacialTech Igloo 5620 PWM или Silent Вольтметр на Mega32 Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Море в объективе
kumehtar 06.07.2026
Хотел написать много проникновенных слов, но передумал.
Оно само - говорит.
Кто слышит тот слышит.
|
Оказывается, Unreal Engine позволяет качество на порядки выше, чем было в Lineedge
Etyuhibosecyu 05.07.2026
Жаль, конечно, что я не узнал об этом, пока Lineedge существовала, а то бы Noname2331 написал, что волки превращаются в пиксельную кашу, а я бы его попросил скачать какую-нибудь бриллиантовую или Pro. . .
|
Doom для терминала без стрельбы и монстров. 3D Raycasting на ascii.
dcc0 05.07.2026
Попросил нейронную сеть deepai. org написать рейкастинг 3D с библиотекой ncurses для Linux. Чтобы можно было
ходить на стрелочки. Чтобы стены были отрисованы символами. Справилась.
Первый вариант. . .
|
Установка статуса документа по условию
Maks 05.07.2026
Алгоритм из решения ниже реализован на нетиповом документе "НарядПутевка" разработанного в КА2.
Задача: в табличной части "Материалы" документа при записи автоматически устанавливать статус. . .
|
|
Сезонность и суточность закисления почв
anaschu 04.07.2026
200 часов это все равно моловато. Есть ситуации, но нестандартные, когда смена происходит за 5 лет.
Но обычно это 50 лет и более.
Наверное, закисление почвы происходит сезонно в средней. . .
|
В чем ценность человеческого опыта в глобальном смысле?
kumehtar 03.07.2026
Возможно, ценность человека не в том, что он однажды достигает мудрости, а в том, что он становится носителем карты пути. Он знает не только истину, но и последовательность внутренних изменений,. . .
|
интеграция AnyLogic с самописным REST API и переход на Odoo
anaschu 03.07.2026
Успешная интеграция AnyLogic с самописным REST API и переход на промышленную Odoo WMS
Сегодня проделал огромный путь от простой симуляции физических процессов до построения полноценной. . .
|
Поиск всех путей на ориентированном графе. Linux
dcc0 02.07.2026
Переработка старого кода из моей статьи.
Через несколько переработок от PHP кода к C89 (надеюсь, 89).
Но довольно запутанно получилось. Код для Linux.
Но если убрать time и то, что с ним. . .
|