Как подключить nRF24L01+ к Arduino Giga R1?

Я купил 2 модуля Arduino Giga R1, 2 модуля nRF24L01+ и 2 адаптера nRF24L01+. Я использую Arduino SPI, чтобы подключить его к nRF24L01+. И я использую следующий код только с этим изменением в коде:

RF24 radio(7, 10); // CE, CSN

Это документация SPI для Arduino GIGA R1 , а это

a href="https://www.addicore.com/products/nrf24l01-pa-lna-with-antenna-2-4ghz-wireless-transceiver">модули nRF24L01+ и соответствующий адаптер (ссылки на модули взяты из случайного поиска в Google, просто чтобы показать вам изображения + документацию модулей).

Однако я не вижу, чтобы что-то работало. Я добавил следующую команду в коды приемника и передатчика:

SPI.begin();
SPI1.begin();

Чтобы активировать оба SPI каждого Arduino, потому что я не знаю, что есть что. Результат: Ничего не работает на Arduino GIGA R1... Тот же код, что выше, отлично работает на Arduino MEGA 2560 R3, поэтому все модули и код в порядке. Проблема в Arduino GIGA R1...

Я снабжаю nRF24L01+ и соответствующие адаптеры источником питания 5 В/1,5 А. Я снабжаю каждую Arduino GIGA R1 блоком питания 5 В/1,5 А.

Я также попробовал этот код, и я получил это сообщение:

Мы потеряли соединение, предотвращая нежелательное поведение

Кто-нибудь знает, как заставить 2 Arduino GIGA R1 взаимодействовать через ссылку nRF24L01+?

, 👍1

Обсуждение

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

Я не могу скопировать код с других сайтов. Условия использования есть на каждом сайте. Это не мой код..., @just_learning

тогда как узнать, что в коде нет ошибок?, @jsotola

Он заработает, если я использую Arduino MEGA 2560 R3 вместо Arduino GIGA R1., @just_learning


2 ответа


Лучший ответ:

3

Не уверен, что вы нашли решение, но у меня была похожая проблема, и я нашел решение, которое может вам подойти.

Как вы знаете, у Giga есть две шины SPI. По умолчанию используются те, которые находятся в заголовке ICSP, второй — на контактах 11–13.

NRF24L01 по умолчанию предполагает, что вы хотите использовать интерфейс по умолчанию — в данном случае SPI. Если вы хотите использовать другой (SPI1), все, что вам нужно сделать, это вызвать Begin на SPI1 и передать его функции начала NRF следующим образом:

    SPI1.begin();
    radio.begin(&SPI1);

Это помогло мне, надеюсь, что и вам тоже.

,

-1

Я просто хочу отметить, что вам не нужен внешний антенный модуль, потому что Arduino Giga R1 имеет антенный разъем micro UFL, а антенна поставляется с каждым Arduino Giga (извините, если они забыли включить ее в комплект поставки). твой), Тем не менее, это, вероятно, больше для устройств Wi-Fi, чем для закрытой связи, тем не менее, nRF24L01+ — отличный способ фактически обмениваться данными между двумя микроконтроллерами, особенно если микроконтроллер не имеет встроенного Wi-Fi или какой-либо беспроводной связи.

,