nRF24L01+ UART Мост

Тема в разделе "Arduino & Shields", создана пользователем Tvis, 9 май 2018.

Метки:
  1. Tvis

    Tvis Нуб

    Помогите найти или сделать UART Мост на nRF24
    Что-то шарил, шарил... и найти ничего не смог.
    Самому никак не написать... (Еще не силен)

    Нашел что-то, но там скетч не рабочий.. Ошибку дает ( error: void value not ignored as it ought to be >>>>>
    done = radio.read(&RecvPayload,len); )
    http://blog.circuits4you.com/2016/04/wireless-serial-using-nrf24l01.html

    Может кто сможет пофиксить буду очень признателен...
     
  2. Belkin

    Belkin Гик

    nRF24L01+ работает по SPI, а не по UART
     
  3. ostrov

    ostrov Гуру

    Что такое UART мост? Между чем и чем?
     
  4. Belkin

    Belkin Гик

    Если я правильно понял (учитывая приведенную ссылку), то ТС надо внимательно почитать комментарии ;)
    Только зачем UART - остается загадкой...
     
    Последнее редактирование: 9 май 2018
  5. Tvis

    Tvis Нуб

    Вобщем может не так сказал) мне надо мост tx rx
    Между двумя ардуинами через nrf24
    Смысл передать с данные tx rx с одной ардуины на другую...
     
  6. ZAZ-965

    ZAZ-965 Гуру

    @Tvis, у вас установлена библиотека RF24 от tmrh20, удалите ее и установите библиотеку RF24 от maniacbug.
     
  7. Tvis

    Tvis Нуб

    Проблемма ушла.. Но код что то работать не хочет
     
  8. ostrov

    ostrov Гуру

    Используйте HC-12.
     
    NikitOS нравится это.
  9. ZAZ-965

    ZAZ-965 Гуру

    Регистр управления в функции USART_Init в соответствии с тактовой частотой установили?
    Код (C++):
    UBRR0L = 51;  //103 для 16MHz  или  51 для 8MHz
     
  10. Tvis

    Tvis Нуб

    ооо, спасибо не заметил.. Заработало но как то криво.. Вроде скорость у обоих стоит 57600, а принимает крокозябры..

    п.с. на 9200 заработало.. Не подскажете как увеличить скорость?
     
  11. ZAZ-965

    ZAZ-965 Гуру

    По моему 57600 много, попробуйте 9600.
     
  12. Tvis

    Tvis Нуб

     
  13. ZAZ-965

    ZAZ-965 Гуру

    Можно попробовать увеличить скорость обмена
    Код (C++):
    radio.setDataRate(RF24_2MBPS);
    увеличить размеры буферов
    Код (C++):
    char SerialBuffer[512] = "";
    char RecvPayload[256] = "";
     
  14. Tvis

    Tvis Нуб

    Все делал но теперь работает только на 19200.... 9200 уже не пашет...
    Может скорость где то задается?
     
  15. NikitOS

    NikitOS Король шутов Администратор

    Есть специальные приемо-передатчики которые работают по uart
     
  16. Tvis

    Tvis Нуб

    Вкурсе, у меня другой вопрос....