реклама на сайте
подробности

 
 
> Передача цифрового звука с помощью CC1101
Salamander
сообщение Nov 27 2012, 17:56
Сообщение #1


Местный
***

Группа: Участник
Сообщений: 466
Регистрация: 17-11-12
Пользователь №: 74 443



Коллеги, у кого-нибудь был положительный опыт?
ПОгуглив на искомую тему, я решил сделать связку STM32F103+cc1101 PA LNA, а звук кодировать с помощью SPEEX.
Вот примеры качества закодирвоанного звука http://www.speex.org/samples/ . Обратите внимание не на фактическое качество, а на разницу по сравнению с исходным. Даже на 4 кбит/сек качество довольно сносное. А сс1101 PA LNA бьет на 1700-2500 метров при скорости 2.5 кбит/сек. Так что даже со скидкой на препятствия и помехи, мне хватит.

ПОсоветуйте где почитать, или может примеры какие есть под эти чипы?



Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов (1 - 4)
_3m
сообщение Nov 28 2012, 07:22
Сообщение #2


Знающий
****

Группа: Участник
Сообщений: 745
Регистрация: 28-12-06
Пользователь №: 23 960



Цитата(Salamander @ Nov 27 2012, 21:56) *
Коллеги, у кого-нибудь был положительный опыт?
ПОгуглив на искомую тему, я решил сделать связку STM32F103+cc1101 PA LNA, а звук кодировать с помощью SPEEX.

Стоит протестировать поведение кодека при повреждениях пакетов с данными. У кодеков с сильным сжатием это может быть больным местом. А в реальном канале битые пакеты будут обязательно.
Go to the top of the page
 
+Quote Post
Salamander
сообщение Nov 28 2012, 08:48
Сообщение #3


Местный
***

Группа: Участник
Сообщений: 466
Регистрация: 17-11-12
Пользователь №: 74 443



Мм... я думал, тестируется радиоканал и алгоритм передачи данных, но никак не кодек.
Позвольте, я порассуждаю, а знающие пусть поправят, если я неправ.
Есть два пути:
1.Передавать закодированные данные мелкими пакетами, в которых закодировано, скажем 0.1 секунда разговора. И просто забивать на битве пакеты. При плохой связи будут отдельные ноты выпадать, что собственно и наблюдается в мобильной связи.
2. Передавать пакетом покрупнее на высокой скорости. Таким образом, за 0.1 секунду мы передадим секундную речь и у нес еще будет по времени несколько попыток передать битый пакет повторно.


Я имею поверхностный опыт работы с CCxx00 и пока теряюсь в догадках, как лучше организовать поток данных.
Можно ли настроить CCxx00 и прерывания контроллера так, чтобы данные гнались непрерывным потоком - то есть пришел из кодека байт, отправил его в буфер передатчика, тот его передал, приемник принял, дал пинка контроллеру, чтобы тот его записал в буфер?
Или же лучше все-таки пакетами с повторной передачей?
Go to the top of the page
 
+Quote Post
Salamander
сообщение Nov 28 2012, 10:05
Сообщение #4


Местный
***

Группа: Участник
Сообщений: 466
Регистрация: 17-11-12
Пользователь №: 74 443



Да, и еще - если я в PMR диапазоне буду гнать цифру.... Меня посодють?
Go to the top of the page
 
+Quote Post
Ivan Kuznetzov
сообщение Dec 1 2012, 22:27
Сообщение #5


Местный
***

Группа: Свой
Сообщений: 307
Регистрация: 6-02-08
Из: Россия, Екатеринбург
Пользователь №: 34 798



Цитата(Salamander @ Nov 28 2012, 16:05) *
Да, и еще - если я в PMR диапазоне буду гнать цифру.... Меня посодють?

Экспериментировал с передачей аудио на CC1110 (есть у TI аппноутов несколько) 16 бит, 8 кГц. Выкинул только I2S кодек, воспроизвожу ШИМом. Вполне сносное качество, помех мало (работал на частоте 868 МГц). При появлении помехи звук просто затыкается. Щас буду объединять STM32 c СС1101 на "передающей" части. "Приемником" будет брелок с CC1110. Поток буду гнать с SD карты.
У Вас как, получилось с кодеком? Я бы тоже хотел попробовать...


--------------------
Разработчик
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 20th July 2025 - 20:35
Рейтинг@Mail.ru


Страница сгенерированна за 0.0137 секунд с 7
ELECTRONIX ©2004-2016