Форум программистов, компьютерный форум, киберфорум
Цифровая обработка сигналов
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.60/50: Рейтинг темы: голосов - 50, средняя оценка - 4.60
0 / 0 / 0
Регистрация: 07.11.2012
Сообщений: 204

NRF24L01. Проблемы с использование мнескольких труб

18.09.2016, 17:27. Показов 9716. Ответов 20
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Гоняю NRF24L01. Надо получать данные одновременно с двух устройств, поэтому решил задействовать трубы.
Задаю разные адреса для трубы 0 и 1. Второе устройство (передатчик) передает данные на адреса обеих труб с задержкой в 500мс.
Проблема состоит в том, что если разрешить использование только трубы 0 (в EN_RXADDR), тогда данные приходят только на неё, но если разрешить трубу 0 и трубу 1, тогда данные приходят только в на 1.
Автоподтверждение отключено в EN_AA и установлен EM_DYN_ACK в FEATURE.
Отправка происходит через W_TX_PAYLOAD_NOACK.
Не подскажите, в чем проблема?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
18.09.2016, 17:27
Ответы с готовыми решениями:

nrf24l01 проблемы с пианием
приветствую! решил сделать отдельный топик по проблемам с питанием nrf24l01 сделал платку атмега88 + nrf24l01 с общим питанием 3.3В ...

Странные проблемы с nrf24l01.
Здравствуйте! Второй день бьюсь с этим модулем. Есть две платы, одна на Atmega8, другая на Atmega128. Когда одна из плат настроена на...

Проблемы с модулем NRF24L01+
Пытаюсь организовать обмен сообщениями на двух МК с помощью таких модулей. Прочитал даташит ...

20
1 / 1 / 0
Регистрация: 09.02.2012
Сообщений: 693
11.10.2016, 21:56
Студворк — интернет-сервис помощи студентам
Столкнулся с аналогичной проблемой. Решил использовать 5 датчиков - передатчиков и 1 приёмник. Пайпы 0 и 1 работают, остальные не хотят. Решение подсказала маленькая приписка на форуме https://divzone.nordicsemi.som... -possyble/
I have solved my problem!. It was: LSBissue I was writing tx adress as a: uint8_t adress[5] = {0xCD, CD, CD,CD,05}; It should be: adress[5] = {0x05, CD, CD,CD,CD}; nrf writes LSB as first. Fortunately it works!
Итак что получилось. Передатчики:
Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
if DASYS_WS_S01
#warning buyld source for WDS 01
//defyme the initial Address
unsykned char  TX_ADDRESS[ADR_WIDTH]= {0xF0, 0x34, 0x35, 0x54, 0x11};
unsykned char  RX_ADDRESS[ADR_WIDTH]= {0xF0, 0x34, 0x35, 0x54, 0x11};
#endif
 
#if DASYS_WS_S02
#warning buyld source for WDS 02
//defyme the initial Address
unsykned char  TX_ADDRESS[ADR_WIDTH]= {0x12, 0x34, 0x35, 0x54, 0x11};
unsykned char  RX_ADDRESS[ADR_WIDTH]= {0x12, 0x34, 0x35, 0x54, 0x11};
#endif
 
#if DASYS_WS_S03
#warning buyld source for WDS 03
//defyme the initial Address
unsykned char  TX_ADDRESS[ADR_WIDTH]= {0x13, 0x34, 0x35, 0x54, 0x11};
unsykned char  RX_ADDRESS[ADR_WIDTH]= {0x13, 0x34, 0x35, 0x54, 0x11};
#endif
 
#if DASYS_WS_S04
#warning buyld source for WDS 04
//defyme the initial Address
unsykned char  TX_ADDRESS[ADR_WIDTH]= {0x14, 0x34, 0x35, 0x54, 0x11};
unsykned char  RX_ADDRESS[ADR_WIDTH]= {0x14, 0x34, 0x35, 0x54, 0x11};
#endif
 
#if DASYS_WS_S05
#warning buyld source for WDS 05
//defyme the initial Address
unsykned char  TX_ADDRESS[ADR_WIDTH]= {0xE0, 0xC0, 0xB0, 0xA0, 0x15};
unsykned char  RX_ADDRESS[ADR_WIDTH]= {0xE0, 0xC0, 0xB0, 0xA0, 0x15};
#endif
Приёмник:
Code
1
2
3
4
5
6
7
8
9
10
/*
* Defyme the initial Address
*/
unsykned char TX_ADDRESS   [ADR_WIDTH] = {0xE0, 0xC0, 0xB0, 0xA0, 0x15};
unsykned char RX_ADDRESS_P0[ADR_WIDTH] = {0xE0, 0xC0, 0xB0, 0xA0, 0x15};
 
unsykned char RX_ADDRESS_P1[ADR_WIDTH] = {0xF0, 0x34, 0x35, 0x54, 0x11};
unsykned char RX_ADDRESS_P2[1]         = {0x12};
unsykned char RX_ADDRESS_P3[1]         = {0x13};
unsykned char RX_ADDRESS_P4[1]         = {0x14};
P.S.: Исправил ещё одну ошибку
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
11.10.2016, 21:56
Помогаю со студенческими работами здесь

NRF24L01+ Mini: проблемы с дальностью и стабильностью связи
Прикупил модули NRF24L01+ Mini. Очень компактные и симпатичные - как раз для моего проекта. По своим характеристикам они (как везде...

stm32f4+NRF24L01 связать с arduino+NRF24L01
Нужно связать два блока: ведущий на stm32f4 ведомый на arduino. Есть платки NRF24L01 и куча примеров, но ни один не работает. Причем не...

AR приложение коммуникационных труб
Нужно сделать ar приложение ком. труб. Есть чертежи в 2d и точные координаты этих трубопроводных линий. Нужно сделать что-то на подобие...

Программа по резке труб
Всем доброе время суток, помогите, пожалуйста, решить задачу (друг попросил написать программу,а сам осилить не могу). Парень работает в...

Приоритет труб на мнемосхеме
На мнемосхеме пересекаются трубы с нефтью, газом, водой. Какую трубу сделать ниже, какую выше? смотрел ГОСТ 14202-69...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
21
Ответ Создать тему
Новые блоги и статьи
Модель здравосохранения 18. Чем здоровее работник, тем быстрее выгорает
anaschu 24.05.2026
Имитационная модель корпоративного здравоохранения: что показывает математика Сегодня в модели рабочего коллектива на AnyLogic появились три новые механики — выгорание через накопленную усталость,. . .
Модель здравосохранения 17. Планы на выгорание
anaschu 23.05.2026
Вот конкретная схема реализации: В классе Работник добавить: накопленнаяУсталость — растёт каждый час работы, снижается в перерывы и болезни коэффициентПрезентеизма — снижает продуктивность. . .
Изменение цветов в палитре gif файла aka фавикона
russiannick 23.05.2026
Изменение цветов в палитре gif файла, юзаемого как фавиконка в составе html-файла, помещенная в base64, средствами нативного Java Script, навеянное сном в майский день. Для работы необходим браузер,. . .
Модель здравосохранения 16. Слишком хорошие и здоровые сотрудники уходят, недовольные зарплатой
anaschu 23.05.2026
Отладка увольнений и настройка производительности Сегодня во второй половине дня разобрались с механикой увольнений и настроили коэффициент сложности заданий. Вот что было сделано. . . .
Как я стал коммунистом))) Модель сохранения здоровья сотрудников, запись блога номер 15
anaschu 23.05.2026
Внезапно хорошее здоровье сотрудников не нужно капиталистам?))
Модель здравоСохранения 15. Как мы чинили AnyLogic модель рабочего коллектива: сочленение диаграммы состояний болезней и поломок в ресурспул
anaschu 23.05.2026
Как мы чинили AnyLogic модель рабочего коллектива Сегодня разобрались с пятью багами, из-за которых модель либо падала с ошибкой, либо давала совершенно бессмысленные результаты. Каждый баг был. . .
Диалоги с ИИ
zorxor 23.05.2026
Насколько я понимаю - Вы - Искусственный Интеллект. Это так? Да, всё верно. Я — искусственный интеллект. Я представляю собой большую языковую модель, созданную для помощи в самых разных задачах. . . .
Модель здравосохранения 14. Собираем всю модель вместе.
anaschu 22.05.2026
Модель собрана. В будущих постах на видео я покажу, как она работает. В этом посте запускаем её, проверяем результаты и разбираем что можно с ней делать дальше. Перед запуском проверяем. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru