Ну не все же могут научные диссертации выстреливать, кому то нужно и абыкакработалоdosikus писал(а):как местное большинство - абыкакработало
Помогите реализовать регулятор громкости...
Re: Помогите реализовать регулятор громкости...
- Реклама
Re: Помогите реализовать регулятор громкости...
Твоё абыкакработало... в виде атмэла... сегодня уже умерло... Выхода у тебя нет... или на Микрочип переходить... или STM32 осваивать...
"Выбирай сам!"(С)...
"Выбирай сам!"(С)...
"Я не даю готовых решений, я заставляю думать!"(С)
- balmer
- Это не хвост, это антенна
- Сообщения: 1433
- Зарегистрирован: Вс дек 02, 2012 03:13:48
- Откуда: Калининград
Re: Помогите реализовать регулятор громкости...
Я бы всетаки посоветовал прикрутить к STM32 какой либо вариант цифрового регулятора громкости. Как вариант - ОУ с программируемым коэффициэнтом усиления. Например MCP6S21 - это 1-32x усиление, т.е. около 30 dB регулировки. Или можно взять LTC6912 - там как раз 2 канала и 1-100x регулировки, т.е. искомые 40 dB.
Но интересно уточнить задачу. Какой входной уровень сигнала? Какой выходной уровень сигнала? Т.е. не исключаю вариант, когда надо скорее усилитель мощности прикручивать, а не сигнал через STM32 пропускать.
Но интересно уточнить задачу. Какой входной уровень сигнала? Какой выходной уровень сигнала? Т.е. не исключаю вариант, когда надо скорее усилитель мощности прикручивать, а не сигнал через STM32 пропускать.
Re: Помогите реализовать регулятор громкости...
Спасибо за совет, но это уже как то смахивает на профессиональное (наверное еще и не дешевое) решение, а мне нужно чтобы "абыкакработало" )))))balmer писал(а):Я бы всетаки посоветовал прикрутить к STM32 какой либо вариант цифрового регулятора громкости. Как вариант - ОУ с программируемым коэффициэнтом усиления. Например MCP6S21 - это 1-32x усиление, т.е. около 30 dB регулировки. Или можно взять LTC6912 - там как раз 2 канала и 1-100x регулировки, т.е. искомые 40 dB.
Входной уровень - линейный выход микшера... т.е. 700мв как я понимаю...balmer писал(а):Но интересно уточнить задачу. Какой входной уровень сигнала? Какой выходной уровень сигнала? Т.е. не исключаю вариант, когда надо скорее усилитель мощности прикручивать, а не сигнал через STM32 пропускать.
Выходной уровень - такой какой даст выход DAC-а... его все равно нужно привести к нужному уровню, который будет подаваться на усилитель для наушников...
Усилитель мощности - естественно... но нужна регулировка на уменьшение уровня звука... переменник ставить не хочется, из-за этого и весь сыр бор )))))))
- balmer
- Это не хвост, это антенна
- Сообщения: 1433
- Зарегистрирован: Вс дек 02, 2012 03:13:48
- Откуда: Калининград
Re: Помогите реализовать регулятор громкости...
Качество будет не очень. Т.е. мы теряем 6 бит из 12-ти, если пытаемся использовать ADC-DAC как цифровой резистор. Если учесть что 2-3 бита нужны для динамического диапазона входного сигнала, то остается всего 3-х битный звук
Вот как вариант цифровой переменный резистор MCP41010-I/SN 75 руб/шт.
Вот как вариант цифровой переменный резистор MCP41010-I/SN 75 руб/шт.
- Реклама
Re: Помогите реализовать регулятор громкости...
Тоже верно... а я было свято поверил в STM-овские 12 бит )))))balmer писал(а):Качество будет не очень. Т.е. мы теряем 6 бит из 12-ти, если пытаемся использовать ADC-DAC как цифровой резистор. Если учесть что 2-3 бита нужны для динамического диапазона входного сигнала, то остается всего 3-х битный звук![]()
Таки уговорили... действительно самый оптимальный вариант получается...balmer писал(а):Вот как вариант цифровой переменный резистор MCP41010-I/SN 75 руб/шт.
заказал отсюда 20 штучек, по 50р... пригодятся и для других применений )))
http://ru.aliexpress.com/item/MCP41010- ... 1298fd8321
Значит старт на STM опять откладывается))) сделаю на своей любимой ATmega8.....
- balmer
- Это не хвост, это антенна
- Сообщения: 1433
- Зарегистрирован: Вс дек 02, 2012 03:13:48
- Откуда: Калининград
Re: Помогите реализовать регулятор громкости...
У STM32 очень хорошие 12 бит. Прогонял музыку через ADC/DAC - на слух разницы не заметно по сравнению с оригинальным сигналом. Но у меня была амплитуда входного/выходного сигнала порядка 0.5 V.shads писал(а):Тоже верно... а я было свято поверил в STM-овские 12 бит )))))
В вашем случае никаких проблемм с ADC не будет, так как сигнал достаточно большой по амплитуде. Но будут проблеммы с DAC. Вот у нас нужно не менее 40 dB регулирования амплитуды звука. Это значит, что для минимального громкости (обычных людей), сигнал будет в 100 раз слабее. Это 6 бит (или даже 7 бит). Еще надо оставить определенный интервал для громких звуков, это порядка трех бит. Вычитаем это из исходных 12-ти бит DAC и остаются 2-3 бита. Впринципе такой звук слушать можно, но он уже будет "не очень". Т.е. даже при таком количестве бит звук еще можно "вытащить" применив стандартные алгоритмы дизеринга, но надо повышать частоту сэмплирования, STM32F100 может не потянуть. Еще одна проблемма - в этом процессоре только один DAC, т.е два канала особо не получится сделать.
Re: Помогите реализовать регулятор громкости...
Вроде 2 канала...balmer писал(а):Еще одна проблемма - в этом процессоре только один DAC, т.е два канала особо не получится сделать.
я по кубику ориентировался, в даташит пока не заглядывал...
А с какой максимальной частотой можно опрашивать ADC ну и соответственно грузить значение в DAC ???
Контроллер практически больше ничего делать не будет... ну только опрашивать кнопки по таймеру 100Гц, ну и да, еще нужно заниматься пересчетом значения ADC перед выводом в DAC...
- balmer
- Это не хвост, это антенна
- Сообщения: 1433
- Зарегистрирован: Вс дек 02, 2012 03:13:48
- Откуда: Калининград
Re: Помогите реализовать регулятор громкости...
Действительно, два DAC 


