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

 
 
> CC1101 и MSP430F5438
mzhelezkin
сообщение Feb 10 2010, 07:55
Сообщение #1





Группа: Участник
Сообщений: 14
Регистрация: 15-01-10
Пользователь №: 54 827



Здравствуйте. Я не однократно писал на этом форуме. Теперь есть еще проблема, может кто подскажет. Кто работал с CC.

Есть две отладочные платы MSP-EXP430F5438. Первое что сделали, настроили воспроизведение голоса с микрофона на звуковой выход через наушники. В качестве ЦАП использовали ШИМ на Timer B. Для настройки использовали статью SLAA116 («Using PWM Timer_B as a DAC»). Перевод данной статьи можно посмотреть по этой ссылке http://www.gaw.ru/html.cgi/txt/app/micros/msp430/slaa116.htm
Для простоты разрядность АЦП и счетчиков Таймера B выбрали 8 бит. Тактирование АЦП и Таймера B осуществляется от SMCLK, частота которого равна 8,36 МГц. Использовав предделитель, частоту тактирования АЦП сделали равной 1,045 МГц. И частота дискретизации 32,46 кГц. В соответствии со статьей, указанной выше, частота тактирования Таймера B равна 8,36 МГц. Настроив таким образом работу АЦП и Таймера B, получили хорошее воспроизведение речи.
Дальше, для радиопередачи, используем микросхемы CC1101, настроенные на частоту 433 МГц. На приборе проверили антенны, у них рабочая частота 433 МГц. В качестве примера, использовали статью SLAA325A («MSP430 interface to CC1100/CC2500 code library») и, указанный в статье пример. Ссылка для скачивания примера http://www.ti.com/lit/zip/slaa325 (указана в статье). Зашив эту программу в контроллеры, платы стали перемигиваться светодиодами (нажимаешь кнопку на одной плате – загорается светодиод на другой).
Далее. В эту программу вносим небольшие изменения. В обработчике прерывания нажатия кнопки есть функция передачи. Она передает данные при нажатии на кнопку. Мы просто заменяем эти данные на свои (из АЦП). И зацикливаем эту функцию в бесконечном цикле. Т.е. при нажатии на кнопку будут передаваться данные из АЦП постоянно. В обработчике прерывания приема, опять же, есть функция приема данных. Она записывает принятые данные в определенный регистр. Мы просто меняем этот регистр на свой (регистр таймера cool.gif.
И еще одно. Так как для работы АЦП и Таймера B нам пришлось увеличить частоту SMCLK, то для работы UART в режиме SPI необходимо использовать предделитель частоты.
Все, больше никаких изменений в программу мы не внесли.
Голос в наушниках получается плохо разборчивый. Такое ощущение, что некоторые отсчеты АЦП пропадают.
Смотрели по спектроанализатору, передатчик передает на частоте 433 МГц.
И еще, радиопередача не стабильна. К примеру, платы стоят друг от друга на расстоянии максимум 15-20 см. Их не трогаешь, а радиопередача прекращается. Для возобновления радиопередачи необходимо нажать кнопку RESET, либо на принимающей плате, либо на передающей. Иногда радиопередача возобновляется сама по себе.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов (1 - 2)
rx3apf
сообщение Feb 10 2010, 11:03
Сообщение #2


Гуру
******

Группа: Участник
Сообщений: 3 834
Регистрация: 14-06-06
Из: Moscow, Russia
Пользователь №: 18 047



Цитата(mzhelezkin @ Feb 10 2010, 10:55) *
И еще, радиопередача не стабильна. К примеру, платы стоят друг от друга на расстоянии максимум 15-20 см. Их не трогаешь, а радиопередача прекращается. Для возобновления радиопередачи необходимо нажать кнопку RESET, либо на принимающей плате, либо на передающей. Иногда радиопередача возобновляется сама по себе.

Из практического опыта - CC1100(очевидно, и 1101) "затыкаются" при близком расположении (при очень большом уровне радиочастотного сигнала). Скажем, без антенн рядом, при +10 dBm - нормально, хоть в 5 сантиметрах. Если с антеннами - то минимум на метр надо разнести, иначе приемник просто не ловит синхронизацию, или ловит неустойчиво. Если уменьшить выходную мощность до минимума - расстояние можно уменьшить.

Ну а что до проблем с передачей речи - надо начинать с анализа надежности канала. Генерируем тестовые пакеты, контролируем прохождение, собираем статистику пропадания. И вот когда канал работает устойчиво - начинаем работать с реальными данными. Помня о том, что это реальный эфир, и в принципе потери (из-за помех) неизбежны (ну, в пределах комнаты, с большой мощностью - все должно работать 100%, если только совсем рядом нет мощной помехи).
Go to the top of the page
 
+Quote Post
fmdost
сообщение Feb 10 2010, 22:17
Сообщение #3


Местный
***

Группа: Свой
Сообщений: 479
Регистрация: 8-05-07
Из: г. Ставрополь. Северный Кавказ. Россия
Пользователь №: 27 606



А какой тип модуляции?
Если ACK, то надо читать еррату.
Если FSK, то действительно, покрутите мощность.
Ещё, неплохо вывести на консоль RSSI.
Go to the top of the page
 
+Quote Post

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

 


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


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