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

Прием Lora с чипом LLCC68

Передатчик на SX1276 раз в 5 секунд шлёт короткий пакет (25 байт).

Пытаюсь принять на ccll68. После того, как частоты передачи по анализатору в sx1276 и ccll68 свёл на одну частоту, ccll68 начал принимать, вернее в режиме приема исправно встает флаг PREAMBLE_DETECTED и следом RX_DONE.

Читаю статус rx буфера (GetRxBufferStatus), получаю длину пакета 255 байт. В начале программы устанавливаю указатель rx буфера (SetBufferBaseAddress) в 0.

После приема вычитал все 256 байт из llcc68 - там мусор. 100 пудов руки не из плеч.... но... выключил передатчик на sx1276. ещё раз.... делаю инит ccll68, выставляю адреса буферов в 0 (SetBufferBaseAddress(0,0), в режим Rx модуль не перевожу, а читаю статус rx буфера (GetRxBufferStatus), получаю длина пакета 255, офсет 0. Почему длинна пакета 255? Пакета ещё не было.

 

если включить передатчик и перевести модуль в режим continuous_receive, то после каждого пакета из sx1276, статус GetRxBufferStatus дает длину пакета 255, а смещение меняется так

0,... 255....254.... 253..... 252....

т.е. указатель в приемном буфере при каждом приеме увеличивается ровно на 255.

Кто нибудь с подобной проблемой сталкивался?

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


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

SX1276 может работать с кадрами в двух режимах: explicit и implicit mode. Только в explicit mode размер кадра передаётся в самом кадре. В implicit mode - его нужно прописать одинаковым на обеих сторонах. Иначе - будут приниматься кадры неверного размера с мусором.

Какой режим установлен у вас? неизвестно...

 

PS: Кроме того - в мануале SX1276 описан формат эфирного пакета. Вы его смотрели? Сравнивали с LLCC68? Совпадают?

PPS: Опять-же - не указали: какие конфигурационные параметры установили? Опять игра в угадайку....  :unknw:

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


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

режим везде implicit, crc везде отключен. Пакет везде одинаковый, SF7, BW125, CR4/5. 

Использую библиотеку llcc68

Цитата

 * @file      driver_llcc68.h
 * @brief     driver llcc68 header file
 * @version   1.0.0
 * @author    Shifeng Li
 * @date      2023-04-15

Коммуникация с llсс68 правильная (т.е. spi c мк нормально всё считывает и записывает). 

В 12.11.2023 в 21:48, ericN сказал:

ещё раз.... делаю инит llсс68, выставляю адреса буферов в 0 (SetBufferBaseAddress(0,0), в режим Rx модуль не перевожу, а читаю статус rx буфера (GetRxBufferStatus), получаю длина пакета 255, офсет 0. Почему длинна пакета 255? Пакета ещё не было.

 даже без какой либо передачи, после включения/инита чипа статус RxBuffer-а выдает, что есть пакет по адресу 0 и длинной 255. От куда? Может так и должно быть и после первого приёма все указатели лягут по красоте. У кого есть под рукой llcc68? Можете проверить, что выдает GetRxBufferStatus() после инита до SetRx?

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


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

В 13.11.2023 в 14:28, jcxz сказал:

в мануале SX1276 описан формат эфирного пакета. Вы его смотрели?

Серьёзно!? А что такое мануал? Не знаю ни каких мануалов.

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


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

2 часа назад, ericN сказал:

Коммуникация с llсс68 правильная (т.е. spi c мк нормально всё считывает и записывает). 

И длину принимаемого кадра тоже "нормально записывает"?

2 часа назад, ericN сказал:

 даже без какой либо передачи, после включения/инита чипа статус RxBuffer-а выдает, что есть пакет по адресу 0 и длинной 255. От куда?

В эфире могут быть помехи. Не думали?

2 часа назад, ericN сказал:

Почему длинна пакета 255? Пакета ещё не было.

Так сбросьте его. В чём проблема сбросить? Вроде как само собой разумеющимся является очистить приёмное FIFO и все флажки статуса сразу после инита, до старта приёма.

1 час назад, ericN сказал:

Серьёзно!? А что такое мануал? Не знаю ни каких мануалов.

тогда печалька.  :cray:

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


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

В 12.11.2023 в 21:48, ericN сказал:

Пытаюсь принять на ccll68

а пытались принять на 1276 от 68? в обратную сторону есть передача?

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


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

В 14.11.2023 в 08:19, razrab83 сказал:

а пытались принять на 1276 от 68?

нет, не пытался. есть готовый маяк на 1276 который работает на передачу. На прием пока нет возможности переделать sx1276. На llcc68 делал передачу. По анализатору спектра вижу, что передача есть, несущая в нужном месте и длительность передачи соответствует длине пакета.

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

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


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

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

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

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

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

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

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

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

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

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