проблем СС1101 TX -> RX CC1121

Обсуждаем цифровые устройства...
Ответить
Друг Кота
Сообщения: 5430
Зарегистрирован: Ср июл 14, 2010 18:27:52

Сообщение Слесарь »

Здравствуйте!
Запрограммировал CC1101 работать передатчиком.
2-FSK; 433.880 MHz; 1.2 kbaud; 9.8 kHz deviation;
Фиксированная длина пакета 8 байт. Преамбула + 16 бит синрослово.

Запрограммировал CC1121 на прием.
2-FSK; 433.880 MHz; 1.2 kbaud; 9.8 kHz deviation;
Фиксированная длина пакета 8 байт. Преамбула + 16 бит синрослово.

На слух другим приемником передатчик пакет передает. Приемник несущую принимает, CARRIER_SENSE на стороне приемника срабатывает.
Пакет принять не удается. RX_STATUS на стороне приемника значение 0x11 не изменяется. Не могу добиться детектирования преамбулы.

На что стоит обратить внимание?
Какие регистры стоит посмотреть во время приема для выявления ошибки?
Реклама
Друг Кота
Сообщения: 5430
Зарегистрирован: Ср июл 14, 2010 18:27:52

Сообщение Слесарь »

Перевел в режим работы OOK модуляции. Пока результат тот же...

Продолжаю исследование.
На стороне передатчика, записываю в FIFO 8 байт. Проверяю TXBYTES, результат 8 байт.
Включаю передатчик STX. Пикает, стоящая неподалеку, на рабочей частоте FM рация, но как-то очень кратко.
Проверяю TXBYTES, результат 0 байт. Байты переданы.
Реклама
Друг Кота
Аватара пользователя
Сообщения: 3793
Зарегистрирован: Ср дек 24, 2008 09:58:58

Сообщение Ser60 »

Если Вы не используете для настройки SmartRF Studio, очень рекомендую сделать это. После настройки в ней одного модуля на прием, другого на передачу, ничего более подстраивать не надо будет. Сейчас как раз занимаюсь этими чипами http://radiokot.ru/forum/viewtopic.php?f=28&t=105219

Рекомендую проверить цепь кварца. У меня на одном чипе была с ним проблема (см. ту тему). На днях заменю кварц и отпишусь туда. Если нет спектроанализатора, замерьте частоту кварцевых генераторов. Она после деления доступна с GPIO0. Может модули работают несколько на разных частотах и не видят друг друга. Опишите свой алгоритм приема и передачи пакетов. Любопытно было-бы взглянуть на монтаж.
Друг Кота
Сообщения: 5430
Зарегистрирован: Ср июл 14, 2010 18:27:52

Сообщение Слесарь »

Конфигурации беру из RF студии. Кварцы проверял с точностью до 100 Гц. Модуль приемника надежно видит модуль передатчика на значительных расстояниях, проверяю это по RSSI1 и CARRIER_SENSE. Значение RX_STATUS в приемнике не изменяется.

Может это аппаратная проблема CC1121 ? резистор RBIAS и конденсатор LPF могут влиять на качество приема?
Реклама
Эиком - электронные компоненты и радиодетали
Друг Кота
Аватара пользователя
Сообщения: 3793
Зарегистрирован: Ср дек 24, 2008 09:58:58

Сообщение Ser60 »

С 1121 я не работал. Если используете регистры контролирующие статус FIFO, почитайте секцию 15.6b в ДШ на сс1101. Я всегда использовал подход, основанный на прерываниях. BIAS резистор 56к никогда подбирать не требовалось.
Реклама
Друг Кота
Сообщения: 5430
Зарегистрирован: Ср июл 14, 2010 18:27:52

Сообщение Слесарь »

Странно, почему на стороне приемника постоянно высокий уровень RX_STATUS . PQT_VALID ? В даташите сказано, что это значение по умолчанию после reset, но так же сказано, что устанавливается когда принят сигнал преамбулы?

PQT_ERROR значение не изменяется. Хоть CARRIER_SENSE и срабатывает но PQT_ERROR остается неизменным значением 15.
Реклама
Друг Кота
Аватара пользователя
Сообщения: 3793
Зарегистрирован: Ср дек 24, 2008 09:58:58

Сообщение Ser60 »

В настоящей версии ДШ регистр RX_STATUS называется MODEM_STATUS1. Хотя это явно и не указано в ДШ, но, основываясь на логике работы PQT, бит PQT_VALID сбрасывается если обнаружено слово синхронизации, или когда подана новая команда перехода в режим приема. Кстати, у Вас PQT детектор включен (бит PREAMBLE_CFG0.PQT_EN)? А длина преамбулы и синхрослово одинаковые на стороне приемника и передатчика?

По отдельному биту в регистре невозможно сказать почему он такой при отсутствии информации как и что Вы делаете. Есть-ли у Вас еще один экземпляр СС1101, чтобы проверить прием на нем и быть на 100% уверенным, что передача пакета происходит нормально? Может стоит попробовать поменять ролями модули, т.е. использовать СС1121 как передатчик. Кажется, что работать с СС1101 проще.

В общем, Вы меня заинтриговали и я склонен опробовать СС112х в деле. Закажу завтра детали и попробую собрать модуль на нем. Задействую СС1101 на стороне передатчика и СС1121 на стороне приемника как у Вас. Надеюсь получить результаты экспериментов примерно через неделю.
Друг Кота
Сообщения: 5430
Зарегистрирован: Ср июл 14, 2010 18:27:52

Сообщение Слесарь »

На данный момент вопрос приостановлен. Спасибо за участие!
Проблема была в том что я протупил с определением
#define CC112X_DEVIATION_M 0x0A
#define CC112X_MODCFG_DEV_E 0x0B
в заголовочном файле проекта. Были присвоены неправильные значения.
Друг Кота
Аватара пользователя
Сообщения: 3793
Зарегистрирован: Ср дек 24, 2008 09:58:58

Сообщение Ser60 »

Рад за Вас, что Вы разобрались, но я уже к тому времени заказал детали и начал разработку. Сегодня, наконец, собрал модуль на СС1125, соответствующим балуном и кварцем на 40 мгц, и решил сообщить о результате как обещал. Модуль сразу распознался СС debugger-ом. В Studio использовал дефолтную конфигурацию, поменял только рабочую частоту на 903 мгц. В режиме передачи спектроанализатор показал работу модуля в точности на такой-же частоте.

Изображение Изображение

При передаче пакетов на СС1125 и приеме их на СС1101 с дефолтными установками из Studio (только лишь установив одинаковую частоту и вид модуляции) принять пакеты сначала не удалось, хотя Studio в режиме Continuous RX показывала наличие периодической передачи. Исправить ситуацию при модуляции 2-FSK удалось установив в обоих чипах Deviation 5.15 кгц и поменяв в СС1125 синхрослово на дефолтное для СС1101. Именно, длина синхрослова у СС1101 равна 16 бит при возможности его повтора и дефолтном значении D3/91 в регистрах SYNC1/SYNC0. В регистрах SYNC3/SYNC0 у СС1125 следует тогда продублировать синхрослово СС1101, установ его значение D3/91/D3/91. После этих изменений прием пакетов стал успешным.
Друг Кота
Аватара пользователя
Сообщения: 3793
Зарегистрирован: Ср дек 24, 2008 09:58:58

Сообщение Ser60 »

Наконец-то выдалось время собрать второй модуль на СС1125 и замерить дальность связи. Прием и передача велась на одинаковые антенны, что на снимке выше, на частоте 903 мгц, и остальных дефолтных параметрах из Studio. Согласно Google Maps, дальность устойчивой связи при мощности передатчика 15 dBm оказалась 1.15 км. Между приемником и передатчиком было много 1-2 этажных жилых домов и лесо-парковая зона. Показываемый Studio RSSI в точке приема был -121 dBm.

Изображение
Друг Кота
Сообщения: 5430
Зарегистрирован: Ср июл 14, 2010 18:27:52

Сообщение Слесарь »

Я пока что тестирую беспроводной термодатчик. Из металлического холодильника связь нормально. 433 МГц.

Считаю что 433 МГц для дальних расстояний и пересеченной местности должно пробивать лучше.
Друг Кота
Аватара пользователя
Сообщения: 3793
Зарегистрирован: Ср дек 24, 2008 09:58:58

Сообщение Ser60 »

Согласен. Мне и такой дальности более чем достаточно. Замерил из чисто спортивного интереса. Для меня более важны малые размеры антенны.
Ответить

Вернуться в «Цифровая техника»