Перейти к содержанию
    

Помогите разобраться с CC1101

To rx3apf: Не совсем понял. Задержка после подачи CS (выбор СС) и передачей команды SRX? или что имеется ввиду?

Да. Согласно даташиту, после подачи -CS надо дождаться "0" на SDO. Я этого сделать не мог (требовалась особая экономичность), и попробовал тупой задержкой. И - нарвался...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Что не делаю - все равно через несколько часов зависает в опросе GDO0. Все время работы нормальный прием-передача, затем нет ответа GDO0 либо при опросе GDO0 после передачи ответа, либо при опросе GDO0 при ожидании приема данных. На GDO2 при этом продолжается запраграммированная f/128

Привожу протокол обмена:

Прием:

После ожидания импульса с GDO0 (GDO0->1, затем GDO0->0)

1. Чтение кол-ва принятых байт RXBYTES(0х7B) прием 5

2. Чтение 3-х байт данных RXFIFO (0x3F)

3. Чтение LQI (0x73)

Reciv_CC.JPG

 

Передача:

Перед передачей переход в SIDLE и очистка SFTX. После SFTX пауза 2 мс затем

1. Загрузка 3-х байт в TXFIFO (0x3F)

2. Включение передачи STX (0x35)

Далее по программе ожидание импульса на GDO0 (GDO0->1, затем GDO0->0) окончания передачи

Reciv_CC_1.JPG

 

СС1101 менял - толку нет.

Что не так?

Изменено пользователем Igor_O

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Пробую читать регистры СС после "отключения" GDO - все ОК. В IOCFG0 0x06. Пробую после зависания переинициализировать СС - все равно продолжает не видеть вх. пачек. Кварц не "гуляет", температура тоже не влияет, т.к. пересбросив питание опять несколько часов все ОК. Замаялся уже - не пойму в чем может быть дело? При этом передатчики, работающие наоборот: каждые 20 сек. передают 3 байта и принимают подтверждение работают постоянно и все ОК.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Доброй ночи! У меня проблема таже. Есть две платы с CC1100, которые обмениваются сообщениями. Алгоритм работы следующий: один трансивер передает пакет(~100байт) раз в 3сек, другой приняв пакет, посылает ответ(~20байт). IOCFG0=0x06, на контроллере(Atmega) прерывание по нарастающему фронту(INT0). Работает неплохо, но переодически(через произвольные промежутки времени), у трансивера ожидающего ответ, прерывание срабатывает(т.е. ловит синхрослово), а в RX FIFO пусто(чтение регистра RXBYTES всегда ноль). Конфигурация трансиверов следующая: MSK, 250kbps, 4байта преамбулы и 4байта синхрослова, PQT=4, переменная длина пакета, CRC включен, адреса выключены, autoflush выключен. Кварц с 6-ю знаками после запятой, разница в частоте несущей ~4KHz. Калибровка после перехода из RX TX в IDLE. Errata читал, косяки трансиверов обходил согласно рекомендациям из них. Расстояние между трансиверами 50см, выходная мощность -10dbm, антенны-куски гибкого провода в четверть длины волны.В чем может быть причина приема синхрослова с достаточно хорошей преамбулой и не приема payload???

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Всем доброго времени суток. Я тоже столкнулся с такой же проблемой. СС1101 выставляет на GDO0 высокий уровень во время приема и так и остается в этом положении. Прием может быть стабилен сутки, а может и через 10 мин после подачи питания прекратится. Igor_O или anaconda вы решили как то аналогичную проблему?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Проблема решена. В датахе сказано, что GDO0 устанавливается в 1 при обнаружении слова синхронизации и сбрасывается в 0 после приема требуемого количества байт. Если же в условиях плохого приема СС1101 примет только слово синхронизации и больше ничего, то GDO0 так и останется в 1. Для сброса его в 0 я поступил так: перешел в IDLE , очистил приемный буфер и вернулся в режим RX. Может кому то будет полезна эта информация.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...