roboforum.ru

Технический форум по робототехнике.
Текущее время: 21 апр 2025, 21:24

Часовой пояс: UTC + 4 часа




Начать новую тему Ответить на тему  [ Сообщений: 20 ]  На страницу 1, 2  След.
Автор Сообщение
 Заголовок сообщения: Кодирование звука для CC2500 (рация) на AVR
СообщениеДобавлено: 28 янв 2009, 23:57 
Не в сети
Аватара пользователя

Зарегистрирован: 28 дек 2004, 20:33
Сообщения: 10211
Откуда: Тольятти
Skype: Ed_Gull
прог. языки: Bascom AVR Basic
ФИО: Гуль Эдуард Викторович
Хочу через СС2500 передовать звук с микрофона на динамик, т.е. технически сделать рацию.
Каким алгоритмом лучше жать?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Кодирование звука для CC2500 (рация)
СообщениеДобавлено: 29 янв 2009, 00:08 
Не в сети

Зарегистрирован: 20 ноя 2008, 19:31
Сообщения: 431
Откуда: Чернобыль
прог. языки: асмемблер
ФИО: Валентин Семенович
это смотря чем жать
для AVR ADPCM-потолок
а если есть чтото пошустрее или даже DSP какой - так смотри в сторону CELP и его вариантов.

_________________
За здравый смысл у нас принимается мнение большинства.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Кодирование звука для CC2500 (рация)
СообщениеДобавлено: 29 янв 2009, 00:13 
Не в сети
Аватара пользователя

Зарегистрирован: 28 дек 2004, 20:33
Сообщения: 10211
Откуда: Тольятти
Skype: Ed_Gull
прог. языки: Bascom AVR Basic
ФИО: Гуль Эдуард Викторович
пока для меги
мало того, для 8МГц, т.к. 3В
на ARM жутко не хочется переходить

Добавлено спустя 38 секунд:
а про DSP я вообще молчу.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Кодирование звука для CC2500 (рация)
СообщениеДобавлено: 29 янв 2009, 00:20 
Не в сети

Зарегистрирован: 20 ноя 2008, 19:31
Сообщения: 431
Откуда: Чернобыль
прог. языки: асмемблер
ФИО: Валентин Семенович
тогда просто забудь про сжатие
а ДСП - тот же контроллер и зря ты его боишься. Щас вон тексы мелкие трехбаксовые выпустили (в серии конечно).

_________________
За здравый смысл у нас принимается мнение большинства.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Кодирование звука для CC2500 (рация)
СообщениеДобавлено: 29 янв 2009, 00:25 
Не в сети
Аватара пользователя

Зарегистрирован: 28 дек 2004, 20:33
Сообщения: 10211
Откуда: Тольятти
Skype: Ed_Gull
прог. языки: Bascom AVR Basic
ФИО: Гуль Эдуард Викторович
ну ADPCM этоже кодирование?
тем более что 32килобита/с CC2500 спокойно продавливает


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Кодирование звука для CC2500 (рация)
СообщениеДобавлено: 29 янв 2009, 00:30 
Не в сети

Зарегистрирован: 20 ноя 2008, 19:31
Сообщения: 431
Откуда: Чернобыль
прог. языки: асмемблер
ФИО: Валентин Семенович
попробуй конечно же.
но ты же этой авркой еще чтото делать будешь?
это будет сложно, с учетом того, что подозреваю она же и декодить будет еще.

_________________
За здравый смысл у нас принимается мнение большинства.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Кодирование звука для CC2500 (рация)
СообщениеДобавлено: 29 янв 2009, 00:34 
Не в сети
Аватара пользователя

Зарегистрирован: 28 дек 2004, 20:33
Сообщения: 10211
Откуда: Тольятти
Skype: Ed_Gull
прог. языки: Bascom AVR Basic
ФИО: Гуль Эдуард Викторович
а чё мне ей еще в рации делать?
тока за кнопками смотреть да жки рулить


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Кодирование звука для CC2500 (рация)
СообщениеДобавлено: 29 янв 2009, 00:51 
Не в сети
Аватара пользователя

Зарегистрирован: 28 дек 2004, 20:33
Сообщения: 10211
Откуда: Тольятти
Skype: Ed_Gull
прог. языки: Bascom AVR Basic
ФИО: Гуль Эдуард Викторович
тут обсуждаем только для AVR


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Кодирование звука для CC2500 (рация)
СообщениеДобавлено: 29 янв 2009, 00:55 
Не в сети

Зарегистрирован: 20 ноя 2008, 19:31
Сообщения: 431
Откуда: Чернобыль
прог. языки: асмемблер
ФИО: Валентин Семенович
прискорбно, значит ты уменьшишь количество людей которым эта тема будет интересна.
обрати внимание что в аппликухе атмеля на ADPCM под AVR просят 16М такт только на декодинг...

_________________
За здравый смысл у нас принимается мнение большинства.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Кодирование звука для CC2500 (рация)
СообщениеДобавлено: 29 янв 2009, 01:02 
Есть у меня конкретное решение:
питание до - 3,6В;
кузов - махонький;
обвязка - 4 детали;
инициализация - 3 комманды;
разрядность - 2 семпла по 8 бит;
режим - слейв, мастер (что очень удобно - запустил и пусть себе кодирует, хочешь снимай, хочешь не снимай);
Ну и самое вкусное - он и DAC и ADC.
А зовут его XE3006


Вернуться к началу
  
 
 Заголовок сообщения: Re: Кодирование звука для CC2500 (рация)
СообщениеДобавлено: 29 янв 2009, 01:10 
Не в сети
Аватара пользователя

Зарегистрирован: 28 дек 2004, 20:33
Сообщения: 10211
Откуда: Тольятти
Skype: Ed_Gull
прог. языки: Bascom AVR Basic
ФИО: Гуль Эдуард Викторович
сложу сюда на всякий случай

Схема усилитель-ограничитель речевого сигнала


Вложение:
zmus2.jpg
zmus2.jpg [ 61.59 КиБ | Просмотров: 3977 ]


Схема предназначена: Как следует из названия, схема предназначается для уменьшения динамического диапазона и пик-фактора речевого сигнала. Это может быть полезно при передаче речи по каналам связи , цифровой обработке и в других случаях.

Принцип работы: Схема представляет собой так называемый ограничитель последовательного действия. Поступающий на ее вход сигнал сначала подвергается предыскажениям в ФВЧ для поднятия высоких частот , затем ограничивается диодами VD1, VD2 ( и DD1b ). Обработанный таким образом сигнал далее поступает на фазовращатель с выполненный на DD1c . Фазовращатель сдвигает фронты ограниченного сигнала так что они оказываются на вершинах импульсов. После этого вступает в действие второй ограничитель ( DD1d ) который эти выбросы срезает. Дальше сигнал поступает на ФНЧ ( DD1e ) для ограничения спектра частотой 2.5 кгц, после чего на выход. Нелинейные искажения таким образом снижаются до уровня 5-7% что для речевого сигнала вполне приемлемо. При изменении сигнала на входе на 30 Дб на выходе изменение 6 Дб. В отличие от схем с АРУ данный усилитель безинерционный.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Кодирование звука для CC2500 (рация)
СообщениеДобавлено: 29 янв 2009, 01:31 
Не в сети

Зарегистрирован: 20 ноя 2008, 19:31
Сообщения: 431
Откуда: Чернобыль
прог. языки: асмемблер
ФИО: Валентин Семенович
$ilent писал(а):
Есть у меня конкретное решение:
А зовут его XE3006


скорее это http://www.vlsi.fi/datasheets/vs1103.pdf
эта хоть сжимает

Добавлено спустя 6 минут 50 секунд:
EdGull писал(а):
сложу сюда на всякий случай

Схема усилитель-ограничитель речевого сигнала


схема гениальная, жаль что не твоя :(
http://qrx.narod.ru/hams/us_og.htm

_________________
За здравый смысл у нас принимается мнение большинства.


Последний раз редактировалось EdGull 29 янв 2009, 02:09, всего редактировалось 2 раз(а).
излишнее цитирование


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Кодирование звука для CC2500 (рация) на AVR
СообщениеДобавлено: 29 янв 2009, 05:24 
Не в сети
Аватара пользователя

Зарегистрирован: 29 апр 2008, 21:15
Сообщения: 4130
Откуда: Хабаровск
прог. языки: C,C++,Assembler,PHP,Javascript,Ruby, SPIN,Java(?)
ФИО: Андрей Юрьевич
EdGull писал(а):
Хочу через СС2500 передовать звук с микрофона на динамик, т.е. технически сделать рацию.
Каким алгоритмом лучше жать?

[[en:CVSDM]]?

_________________
Проект [[Open Robotics]] - универсальные модули для построения роботов
Модули Open Robotics можно приобрести в магазине shop.roboforum.ru

Day OFF? You must be pulling my leg! Stop making humor before someone sees you, fool!



Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Кодирование звука для CC2500 (рация) на AVR
СообщениеДобавлено: 29 янв 2009, 09:38 
Не в сети
Аватара пользователя

Зарегистрирован: 28 дек 2004, 20:33
Сообщения: 10211
Откуда: Тольятти
Skype: Ed_Gull
прог. языки: Bascom AVR Basic
ФИО: Гуль Эдуард Викторович
шо то какой-то хитрый это алгоритм, в рунете ни одной странички на русском языке


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Кодирование звука для CC2500 (рация) на AVR
СообщениеДобавлено: 29 янв 2009, 10:53 
Не в сети
Аватара пользователя

Зарегистрирован: 29 апр 2008, 21:15
Сообщения: 4130
Откуда: Хабаровск
прог. языки: C,C++,Assembler,PHP,Javascript,Ruby, SPIN,Java(?)
ФИО: Андрей Юрьевич
алгоритм на самом деле очень простой.

Энкодер поддерживает эталон (reference sample), и размер шага. Каждая выборка сравнивается с эталоном. Если выборка больше эталона, энкодер выдает 1 и увеличивает эталон на размер шага, иначе выдает 0 и уменьшает эталон на размер шага. Энкодер также сохраняет предыдущие N бит (очень распространены N = 3 и N = 4) для определения корректировки шага. Если предыдущий N битов все 1 или все 0, шаг удваивается. Иначе, шаг уменьшается в 2 раза. Шаг корректируется для каждой выборки.

Псевдокод:
Код:
N = 4;
last_bits[N] = {0, 0, 0 , 0};
step = 1;
reference = 0;

int sample_bit()
{
    sample = ADC;
    if (sample > reference) {
        bit = 1;
        reference += step;
    } else {
        bit = 0;
        reference -= step;
    }
    last_bits[0..N-2] = last_bits[1..N-1];
    last_bits[N-1] = bit;
    if (array_sum(last_bits) == N || array_sum(last_bits) == 0) {
        step = step * 2;
    } else {
        step = step / 2;
    }
    return bit;
}

_________________
Проект [[Open Robotics]] - универсальные модули для построения роботов
Модули Open Robotics можно приобрести в магазине shop.roboforum.ru

Day OFF? You must be pulling my leg! Stop making humor before someone sees you, fool!



Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 20 ]  На страницу 1, 2  След.

Часовой пояс: UTC + 4 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 0


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
phpBB SEO