Форум программистов, компьютерный форум, киберфорум
Электроника и радиотехника
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.73/466: Рейтинг темы: голосов - 466, средняя оценка - 4.73
0 / 0 / 0
Регистрация: 06.02.2010
Сообщений: 262

WAV-проигрыватель на Mega32 PWM или R-2R

20.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
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
20.11.2011, 17:36
Ответы с готовыми решениями:

Проигрыватель Wav (ошибка в программе)
#include "stdafx.h" #include "windows.h" #include "mmsystem.h" #include "stdio.h" #include "string.h" #include <iostream> using...

JSP: ссылка на wav файл не запускает проигрыватель?
Проблема в следующем: Когда я нажимаю на ссылку на wav файл из htm, у меня запускается WinAmp, как работающее по умолчанию средство...

Залочил Mega32 или нет ?
Все время во всех мк пользовался внутренним RC генератором, сегодня понадобилось подкинуть кварц на 12 MHz... с дуру включил фьюз таким...

93
0 / 0 / 0
Регистрация: 06.02.2010
Сообщений: 262
24.11.2011, 00:55
Студворк — интернет-сервис помощи студентам
цена что-то вроде 2к за лист А4
цена в рублях ? если да, то вроде бы совсем дешево... если нет, то для меня коробка шоколадных конфет и шампанское для девушки обойдутся дешевле)
0
MCSD: APP BUILDER
 Аватар для IT_Exp
8795 / 1074 / 104
Регистрация: 17.06.2006
Сообщений: 32,602
24.11.2011, 11:13
Цитата Сообщение от syssobssy
Подскажите пожалуйста, как будет выглядеть решение схематично ?

Я думал поставить сразу после ШИМа LM386. Только входное переменное сопротивление 10К подключить через делители на ноги мк для программной регулировки уровня громкости. Нужна ли в этом случае интегр. RC цепочка ?

Сейчас динамик 32 Ома напрямую подключен к выходу мк. Громкость вполне зочОтная, на видео слышно.
Напрямую динамик- опасно, надо через повторитель. Можно попробовать на входе делитель для регулировки громкости. Поскольку эмиттерный повторитель имеет высокое входное сопротивление - ему можно

да, дроссель на картинке-динамик

насчёт RC-фильтра. обычно даже не RC-фильтр ставят, а двухзвенный фильтр НЧ на ОУ - только он может обеспечить достаточную крутизну спада


http://**************************/download/file.php?id=7560&sid=6d83b7c5caf1050d282 253b4194e7397
0
0 / 0 / 0
Регистрация: 19.09.2011
Сообщений: 1,835
24.11.2011, 11:59
Если частота ШИМ - мегагерцы, то ОУ лучше не применять - он на этих частотах не усиливает и в схеме фильтра не сработает. Оптимально именно RC или LC плюс усилитель на ОУ..
0
MCSD: APP BUILDER
 Аватар для IT_Exp
8795 / 1074 / 104
Регистрация: 17.06.2006
Сообщений: 32,602
24.11.2011, 12:17
Да ну какие тут мегагерцы. Для звука везде, где я видел применяют именно активные фильтры на ОУ. Другое дело, если для говорилки - лишняя сложность
0
0 / 0 / 0
Регистрация: 19.09.2011
Сообщений: 1,835
24.11.2011, 12:45
Я говорю про ШИМ сигнал. Звук - да, до 20 КГц. Но ШИМ - умножь на 256 и более. И вот тут фильтр на ОУ работать не будет (вообще-то будет за счет того, что ОУ просто физически не сможет усилить такие частоты, но характеристика будет черти что). Ты же хочешь отфильтровать звук от ШИМ.
0
MCSD: APP BUILDER
 Аватар для IT_Exp
8795 / 1074 / 104
Регистрация: 17.06.2006
Сообщений: 32,602
24.11.2011, 12:52
Ну почему не будет-то - все делают активные фильтры после шима именно для звука (качественного)
http://forum.ixbt.som/topys.cgi?id=48:6702
http://itistromyx.ru/forum/lofiversion/ ... 51171.html
<a ctoss="postlink-local" href="http://forum.iosyitistromyss.ru/viewtopys.php?f=14&t=6670">viewtopys.php ?f=14&t=6670[/URL]
http://www.proaxis.som/~wagnerj/PWMfil/ ... ilters.pdf
0
MCSD: APP BUILDER
 Аватар для IT_Exp
8795 / 1074 / 104
Регистрация: 17.06.2006
Сообщений: 32,602
25.11.2011, 11:48
Не совсем в тему, просто чтоб идея не пропала.
Никому не приходило в голову идея сделать 16-битный ШИМ? Производительности меги не хватит, чтобы реализовать его для вывода звука в обычной манере. Но если использовать два 8-ми битных канала одного таймера? В один - загоняем старший байт, в другой - младший. потом фильтруем и суммируем с помощью сумматора на ОУ (Старший байт+младший/256)?
0
0 / 0 / 0
Регистрация: 19.09.2011
Сообщений: 1,835
25.11.2011, 12:30
Если просуммировать с точностью лучше 0,4% то можно.
0
0 / 0 / 0
Регистрация: 06.02.2010
Сообщений: 262
25.11.2011, 15:04
Никому не приходило в голову идея сделать 16-битный ШИМ?
нужно подумать может и попробую переписать. Особой существенной разницы между 8бит и 16бит при проигрывании аудио на компьютере не ощутил.
0
0 / 0 / 0
Регистрация: 19.09.2011
Сообщений: 1,835
25.11.2011, 15:18
Ну почему не будет-то - все делают активные фильтры после шима именно для звука (качественного)
Во всех ссылках частота ШИМ очень низкая. Или, как в первой, стоит задача подавить частоту дискретизации
0
0 / 0 / 0
Регистрация: 19.09.2011
Сообщений: 1,835
25.11.2011, 15:21
Особой существенной разницы между 8бит и 16бит при проигрывании аудио на компьютере не ощутил
Разница - в уровне шумов.
Сигнал можно сымитировать как сумму идеального звукового сигнала и шумов, которые получаются при оцифровке.
Шумы при 16 битах в 250 раз меньше, чем при 6 битах. Но если звук громкий - это почти незаметно.
0
MCSD: APP BUILDER
 Аватар для IT_Exp
8795 / 1074 / 104
Регистрация: 17.06.2006
Сообщений: 32,602
25.11.2011, 15:27
Цитата Сообщение от syssobssy
Никому не приходило в голову идея сделать 16-битный ШИМ?
нужно подумать может и попробую переписать. Особой существенной разницы между 8бит и 16бит при проигрывании аудио на компьютере не ощутил.
Да ну, бросьте. допустим 24бита и 16 может и не так уже будет заметно, но 8бит - слышно сразу, 256 ступенек оцифровки явно мало для качественного звука. Хотя реальный звук - не чистый синус, конечно и ухо не идеально. Эти ступеньки могут и не резать слух, если рядом нет оригинала и хорошей аккустики.
0
0 / 0 / 0
Регистрация: 19.09.2011
Сообщений: 1,835
25.11.2011, 15:36
Но проявляются эти ступеньки в виде постороннего шума. И это режет слух (сигнал/шум хуже -46 дБ при полной шкале. Так как средний уровень сигнала может быть в 10 раз меньше, то сигнал/шум может ухудшиться до -26 дБ, а это режет слух точно. Но в Жигулях этого можно и не заметить).
На самом деле, попробуйте послушать на компьютере.
А про качественный звук никто и не говорит.
0
0 / 0 / 0
Регистрация: 06.02.2010
Сообщений: 262
25.11.2011, 16:47
Слушаю с ноутбука в наушниках. Пример композиции 8 бит и 16 бит по ссылке (размер 8Мб) http://ifolder.ru/27193636

0
0 / 0 / 0
Регистрация: 06.02.2010
Сообщений: 262
30.11.2011, 22:15
Удалось придумать как сделать более или менее нормальную озвучку фраз. Очень помог движок синтезатора речи Acapela Group с женским голосом Аленушки)). Взят на торренте, релиз 2008 года. Женский голос довольно таки сексапильный с набором фраз 40 тыс. слов. Есть мужской голос Никалий, но он мне не подходит (немного хуже звучит). Предусмотрена возможность регулировки скорости произношения, тона, громкости. Имеются и более глубокие настройки правильных ударений, настройка фонем и тд. Предварение и окончание инфо-фраз заключено саунд эффектом, который выдран из Win7. Проверил также "Алену" на произношение цифр и производных числительных - зачетно звучит ! Может получится зачетный говорящий счетчик или часы-календарь.
Зацените что у меня в итоге получилось.

"Сработка датчика движения в ванной комнате","Сработка датчика движения в кухне","Открыта входная дверь","Закрыта входная дверь","Превышен температурный порог","Постановка на сигнализацию","Снятие с сигнализации","Температура в помещении +/-X градусов".

Образцы Wav файлов:
http://ifolder.ru/27307339
http://ifolder.ru/27307341
http://ifolder.ru/27307342
http://ifolder.ru/27307344
http://ifolder.ru/27307346
http://ifolder.ru/27307348
http://ifolder.ru/27307350
http://ifolder.ru/27307352
http://ifolder.ru/27307354
http://ifolder.ru/27307356

Видео работы
http://i31.***********/big/2011/1201/cb/4f8e13af590ebe3726ccb4a71a8d6ecb.png
http://youtu.be/7zbQo2lmdHg

Может быть кому-нибудь мой опыт использования синтезатора речи и окажется полезным, вот если бы еще добиться 16 битного звучания убрав шум при воспроизведении.... Преимущества такой озвучки событий очевидны - неизменный женский (мужской) голос, коррекция скорости произношения, простой и быстрый способ пересборки или добавления новых семплов, бесплатное решение. Минусы - для коррекции некоторых слов придется редактировать словарь с ударениями (что впрочем не сложно), по некоторым фразам все равно будет угадываться речевой синтез.

PS для сравнения выложу озвученный крайний абзац мужским голосом Никалий 16kHz и Алена 22kHz:
http://ifolder.ru/27308670
http://ifolder.ru/27308671
0
0 / 0 / 0
Регистрация: 22.01.2010
Сообщений: 3,496
30.11.2011, 22:50
http://ifolder.ru/27307339
«Закрыты входная дверь». Бугога. русски езыг така нигуча и велика...
0
0 / 0 / 0
Регистрация: 06.02.2010
Сообщений: 262
30.11.2011, 23:05
да, бывают и перлы)
нужно добавить новое или править существующее произношение в редакторе Tixicon Manager.
0
MCSD: APP BUILDER
 Аватар для IT_Exp
8795 / 1074 / 104
Регистрация: 17.06.2006
Сообщений: 32,602
30.11.2011, 23:51
А зачем синтезатор? Нельзя какую-нибудь Наташку попросить вместо Алёнушки пару слов в микрофон сказать?
0
0 / 0 / 0
Регистрация: 06.02.2010
Сообщений: 262
01.12.2011, 00:56
Нельзя какую-нибудь Наташку попросить вместо Алёнушки пару слов в микрофон сказать?
дело в том, что у Наташки не такой сексапильный голос как у Аленки) А если честно, мне пока что и такое качество голоса подойдет, InfoVOX Desktop 2.2 очень достойная и зачОтная софтина. Может быть вскоре и появятся в продаже чипы VSxxxx для форматов mp3-ogg.
0
MCSD: APP BUILDER
 Аватар для IT_Exp
8795 / 1074 / 104
Регистрация: 17.06.2006
Сообщений: 32,602
01.12.2011, 11:46
есть специальные проги для изменения голоса, можно самому наговорить, а потом сделать его женским до нужного уровня сексапильности, или сделать голос робота или кучу каких эффектов добавить
можно тут посмотреть http://cjcity.ru/soft/cat10-1.html

а есть даже, которые в реалтайм работают, типа:
AV Voice Changer
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
01.12.2011, 11:46

При нажатии на первую кнопку открывать проигрыватель музыки, а на вторую - проигрыватель видео
Как сделать что бы при нажатии на первую кнопку открывался проигрыватель музыки а на вторую открывался проигрыватель видео. Help.

Контролер управления вентиляторами или PWM?
Допустим у меня в корпусе есть блок упр. вентиляторами, я хочу поставить Corsair Air Series AF120 только с 3пиновым конектором. Я раньше...

Что выбрать: медиапроигрыватель или Blueray проигрыватель
Я, конечно, отлично понимаю, что научный и технический прогресс не стоит на месте, но тем не менее возник вопрос, что лучше сегодня...

Кулер для i5-4460 GlacialTech Igloo 5620 PWM или Silent
Друзья, хочу купить процессор i5-4460, есть 2 вопроса: Будет ли существенная разница в охлаждении данного процессора между этими...

Вольтметр на Mega32
Здравствуйте. Решил обратиться за помощью, т.к. сам пока такую проблему решить не могу. Увидел в сети вольтметр на AVR. Решил собрать....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
40
Ответ Создать тему
Новые блоги и статьи
Море в объективе
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 и то, что с ним. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru