nRF24l01+ вывод мусорных значений

Я только что купил набор из 10 модулей nRF24l01+ с прорывной платой, которая выглядит следующим образом:

nRF24l01+ module

Примечание: Это чип nRF24l01+, а не клон Si24Ri. Кроме того, я использую Arduino Mega.

Я следую учебнику Sparkfun здесь:
https://learn.sparkfun.com/tutorials/nrf24l01-transceiver-hookup-guide

Провода подключены вот так:

  • 3.3 V → VCC
  • GND → GND
  • ШИМ 8 → IRQ
  • ШИМ 9 → CE
  • ШИМ 10 → CSN
  • ШИМ 11 → MOSI
  • ШИМ 12 → МИСО
  • ШИМ 13 → СКК

Я убедился, что оба модуля подключены так, как и должны. Я использую примерную программу GettingStarted для обоих блоков. Всякий раз, когда я иду в последовательный монитор при подключении к передатчику, я получаю мусорные значения, такие как <�SžRÖ выход. Всякий раз , когда я пытаюсь передать сообщение, введя t, ничего не возвращается. Та же проблема происходит на приемном конце.

Что касается устранения неполадок:

  • Я пошевелил все соединительные кабели, чтобы проверить стабильное соединение.
  • Я поменял модули, которые я использовал с другими из пакета (дважды), поэтому модули, вероятно, не плохи.
  • Прочитав, что конденсатор иногда необходим для обеспечения более плавного напряжения модуля, я увеличил напряжение с 3,3 В, которое обеспечивал Arduino, до стабильных 3,5 В от внешнего переменного источника питания, чтобы учесть любые небольшие провалы напряжения. На данный момент у меня нет доступных конденсаторов, поэтому я решил, что это будет следующий лучший вариант.

К сожалению, мои радиочастотные модули все еще неправильно передают какие-либо данные, и я не знаю, куда идти дальше.

, 👍1

Обсуждение

Проверьте контакты SPI. На Меге они совсем другие., @Mikael Patel

Видишь http://blog.brunodemartino.com.ar/wp-content/uploads/2013/11/connections.png, @Mikael Patel

Не повезло - мусорные значения все еще выводятся даже после изменения конфигурации провода. Я тоже не вижу в этом примере скетча ничего такого, что мне нужно было бы изменить., @Michael Lilley

Ах, подождите! Неважно, это действительно сработало. Мне просто нужно было убедиться, что я нахожусь на скорости 115200 бод в своем последовательном мониторе., @Michael Lilley


1 ответ


0

Сначала проверьте эти вещи:

  • Ваш источник питания обеспечивает постоянное напряжение 3,3 В и минимум 0,5 А(500 мА)?
  • Работает ли ваш код для других?
  • Вы на правильной скорости передачи последовательных данных?
  • Является ли путь от радио до Arduino как можно короче?
  • Ваши провода МИСО и МОСИ переплетены друг с другом?

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

,