Возможности nRF24L01

CEBKACooler
Offline
Зарегистрирован: 14.01.2014

Может ли nRF24L01 одновременно передавать разные данные на 6 приемников? Другими словами 1->6. Где для каждого приемника идет свой сигнал.

Пример: 1->1 : 0хA10055FF

            1->2 : 0xA20066BB

            и т.д.

NeiroN
NeiroN аватар
Offline
Зарегистрирован: 15.06.2013

Только если все приемники будут принимать один и тот же сигнал а контроллер сам будет разбираться который из пакетов его.

axill
Offline
Зарегистрирован: 05.09.2011

CEBKACooler пишет:

Может ли nRF24L01 одновременно передавать разные данные на 6 приемников? Другими словами 1->6. Где для каждого приемника идет свой сигнал.

Пример: 1->1 : 0хA10055FF

            1->2 : 0xA20066BB

            и т.д.

"паралельно" ардуино не умеет в принципе как и nrf24, но вот один за другим пакеты разным адресатам отправить не проблема. У тка24 40-битная система адресации вшитая в железе  и каждому приемнику можно назначить свой адрес. Более того, каждой из 6 pipes приемника можно настроить модификацию адреса (при это должны совпадать старшие 32 бита адреса)

иногда бывает удобно всем назначать один адрес, тогда все будут слышать всех. В этом случае уже на прамном уровне в пакет с данными добавляем адрес (1-2 байта) и програмно фильтруем "чужие" пакеты

axill
Offline
Зарегистрирован: 05.09.2011

NeiroN пишет:

Только если все приемники будут принимать один и тот же сигнал а контроллер сам будет разбираться который из пакетов его.

вовсе не так. можно настроить у приемников индивидуальные адреса и тогда модуль будет игнорировать чужие пакеты на железном уровне (ардуина про них даже не узнает)

CEBKACooler
Offline
Зарегистрирован: 14.01.2014

axill пишет:

У тка24 40-битная система адресации вшитая в железе  и каждому приемнику можно назначить свой адрес. 

Например,  я отсылаю 0х01FFCCDD, и за ним сразу следующий пакет 0x02FFCCAA, где 01 и 02 определяюи, на какой из контроллеров пойдет сигнал. Так же можно сделать? 

И еще вопрос, какое время между отправкой пакетов? То есть если я оправля 6 пакетов на 6 контроллеров, будет казаться, что они пришли одновременно?

Puhlyaviy
Puhlyaviy аватар
Offline
Зарегистрирован: 22.05.2013

CEBKACooler пишет:

Например,  я отсылаю 0х01FFCCDD, и за ним сразу следующий пакет 0x02FFCCAA, где 01 и 02 определяюи, на какой из контроллеров пойдет сигнал. Так же можно сделать? 

И еще вопрос, какое время между отправкой пакетов? То есть если я оправля 6 пакетов на 6 контроллеров, будет казаться, что они пришли одновременно?

ыыыы. а если контролеры разнести по разным углам солнечной системы? то будет ли разница в пару милисекунд при отправке влиять на скорость распространения радио волн и время получения? 
да и в целом на фоне вселенной, вся известная история человечества случилась одновременно :)

вот вы специально тупые вопросы придумываете? или на самом деле такой?

CEBKACooler
Offline
Зарегистрирован: 14.01.2014

Puhlyaviy пишет:

вот вы специально тупые вопросы придумываете? или на самом деле такой?

Они могут отправляться с разницей в 1микросекунду, а могут в разницу в 1 миллисекунду. Так вот если в первом случае будет не заметна разница, а то во втором уже критична.

Чувак, ты вместо того чтобы выпендриваться, лучше бы помог. Один мне про рыбу и удочки лечил, щас ты еще взялся. Раз такие умные, че тогда тут сидите?

Puhlyaviy
Puhlyaviy аватар
Offline
Зарегистрирован: 22.05.2013

CEBKACooler пишет:

Они могут отправляться с разницей в 1микросекунду, а могут в разницу в 1 миллисекунду. Так вот если в первом случае будет не заметна разница, а то во втором уже критична.

Чувак, ты вместо того чтобы выпендриваться, лучше бы помог. Один мне про рыбу и удочки лечил, щас ты еще взялся. Раз такие умные, че тогда тут сидите?

гыыы притормаживай на поворотах... посмотри на каких частотах работает камушек и посчитай сам.. 1 миллисекунда ему критично.. взять чип за 50 центов и требовать от него что бы он работал как чип за 150 баксов.. ты еще начни тему про запас прочности и армейские стандарты :) ( там ниже уже была такая, много ржали)

о твоем проекте остается только строить догадки.. а так же о критичности 1 миллисекунды.. нужно что бы все унитазы с точностью до 1 микросекунды воду спускали одновременно?

axill
Offline
Зарегистрирован: 05.09.2011

CEBKACooler пишет:

Например,  я отсылаю 0х01FFCCDD, и за ним сразу следующий пакет 0x02FFCCAA, где 01 и 02 определяюи, на какой из контроллеров пойдет сигнал. Так же можно сделать?

у меня нет такой травы как у вас. Я не понимаю что такое 0х01FFCCDD, 0x02FFCCAA. Я не робот, чтобы кодами понимать логику, хотите ответ- пишите вразумительно на русском, ну или пример кода с пояснением на русском

CEBKACooler пишет:

И еще вопрос, какое время между отправкой пакетов? То есть если я оправля 6 пакетов на 6 контроллеров, будет казаться, что они пришли одновременно?

"казаться" это понятие субъективное. Будет казаться или не будет зависит от свойств субъекта наблюдения. например если в качестве субъекта будет нуб после пары бутылок пива, то ему и 5 секнуд интервал будет казаться "одновременно".

учитесь внятно задавать вопросы, если конечно хотите получить внятные ответы

CEBKACooler
Offline
Зарегистрирован: 14.01.2014

Puhlyaviy пишет:

о твоем проекте остается только строить догадки.. а так же о критичности 1 миллисекунды.. нужно что бы все унитазы с точностью до 1 микросекунды воду спускали одновременно?

В даташите нихрена не указано, с какой разностью во времени они отправляются. Есть только скорость - 2 мегабита в секунду, то есть 1 байт за 16мкс отправляется. Мой пакет весит 16байт. Получается 6 пакетов отправятся за полторы милисекунды, это в самом идеальном случае, что уже не подходит моему проекту, поэтому придется делать для каждого приемника свой отдельный передатчик. Спс, разобрался сам

CEBKACooler
Offline
Зарегистрирован: 14.01.2014

0х01FFCCDD, 0x02FFCCAA - это 4байтных HEX коды, где старшие биты 01 и 02 отвечают, для какого устройства сигнал

Puhlyaviy
Puhlyaviy аватар
Offline
Зарегистрирован: 22.05.2013

CEBKACooler пишет:

В даташите нихрена не указано, с какой разностью во времени они отправляются. Есть только скорость - 2 мегабита в секунду, то есть 1 байт за 16мкс отправляется. Мой пакет весит 16байт. Получается 6 пакетов отправятся за полторы милисекунды, это в самом идеальном случае, что уже не подходит моему проекту, поэтому придется делать для каждого приемника свой отдельный передатчик. Спс, разобрался сам

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

axill
Offline
Зарегистрирован: 05.09.2011

CEBKACooler пишет:

0х01FFCCDD, 0x02FFCCAA - это 4байтных HEX коды, где старшие биты 01 и 02 отвечают, для какого устройства сигнал

в библиотеке RF24 есть метод http://maniacbug.github.io/RF24/classRF24.html#a50c8e68ee840e1860a31dbdc...

перед отправкой задаете адрес для отправки

на приемниках при запуске в setup устанавливаете индивидуальные адреса используя http://maniacbug.github.io/RF24/classRF24.html#aa7e8523f86f9f8f20c274e0c...

после этого шлите что угодно, каждый приемник будет получать только то, что отправлено на его адрес

CEBKACooler
Offline
Зарегистрирован: 14.01.2014

спс большое

Puhlyaviy
Puhlyaviy аватар
Offline
Зарегистрирован: 22.05.2013

axill пишет:

в библиотеке RF24 есть метод http://maniacbug.github.io/RF24/classRF24.html#a50c8e68ee840e1860a31dbdc83afbd77

ну вот к чему это? ну теперь готовься обьяснять ему что такое каналы и как их менять, что такое SPI и пины выбора. и почему один хрен не получится одновременно отправить с одной ардуины даже если всю ее увешать передатчиками :) ну в общем коротенечко, часа на 4 лекцию готовь. :)

brokly
brokly аватар
Offline
Зарегистрирован: 08.02.2014

Не понравилось чуваку рыбку ловить. Зачем портить свой мосх если есть чужие :-)  Ему да же гугл не помогает... Юморист !

"Зачем вы тут все если на мои вопросы не отвечаете ?! А я спрашиваю ЗАЧЕМ ? Зачем вы вообще без меня ?!"

 

 

Security000
Offline
Зарегистрирован: 30.10.2015