FS100A работает, когда Arduino подключен к ПК, но не работает при подключении к Raspberry Pi.
Я создаю простую схему, которая отслеживает влажность почвы в цветочном горшке. Я смог измерить его и отправить с одного Arduino Nano на другой Nano через передатчик и приемник FS100A и библиотеку VirtualWire.
Поскольку это пока прототип, я подключил 1-й (измерительный) Nano к блоку питания, и он работает нормально: я вижу, что данные отправляются и принимаются вторым Arduino.
Второй Nano получает данные (менее 50 байт) и отправляет их на ПК через последовательное соединение USB. Все работает нормально, пока 2-й Arduino подключен к чему угодно, кроме Raspberry PI. Тогда он не сможет получить какие-либо данные.
Я модифицировал исходный код своей программы, чтобы встроенный светодиод мигал сразу после считывания данных. Когда 2nd Nano питается от другого блока питания, он мигает (данные считываются). То же самое происходит с любым другим ПК. Но когда я пытаюсь использовать его с RPi, мигания нет. RPi — это модель B+, и я пробовал два разных устройства.
Я подозреваю, что Raspberries не обеспечивает стабильного питания USB или создает много помех, препятствующих считыванию данных радио. Есть ли способ преодолеть это?
@walak, 👍-1
Обсуждение1 ответ
После некоторых попыток у меня все получилось. Я пытался использовать переключатель уровней. Это как-то работало, но я не смог найти ни одной библиотеки, которая работала бы с VirtualWire от Arduino.
Я просто поставил конденсатор 220µ на линии питания к радиоприемнику. Он отфильтровывает весь шум, и Arduino может правильно интерпретировать сигналы.
- 433 МГц отправка не принимается
- Подключение Arduino Nano к Raspberry Pi Zero
- Исключение в потоке "main" java.awt.AWTError: Can't connect to X11 window server using 'localhost:1.0' as the value of the DISPLAY variable
- Как подключить Elegoo Nano к Raspberry Pi и запрограммировать его?
- Raspberry Pi 3B+ BLE связь с Arduino Nano 33 IOT
- Отправьте сигнал ЭКГ с помощью NRF24L01 с Arduino на Raspberry Pi 3.
- Как правильно отправлять байты между RPI и Arduino по I2C при использовании ISR без ошибок ввода-вывода?
- avrdude ser_open() can't set com-state
Попробуйте подключить Arduino к внешнему источнику питания и используйте только RPi для получения/отображения ваших данных. Таким образом вы докажете, что проблема заключается в недостаточном напряжении. Если у вас есть цифровой мультиметр, вы можете проверить это, измерив напряжение на USB-порту RPi., @smajli