Последовательное соединение Wemos Mini и Pro Micro
В то время как использование 3.3 v Pro Mini и Wemos mini для связи через последовательный порт было успешным, при попытке использовать 5v Pro Micro он потерпел неудачу.
Чтобы преодолеть другой логический уровень, я использовал резисторы 10K + 20K, чтобы успешно снизить напряжение Pro-Micro от 5 В до 3,3 В на контактах Tx
и Rx
. Кроме того, поскольку они находятся на одной печатной плате, контакты GND подключены и
RAW
to 5V
at wemos mini также подключен. На данный момент он питается с помощью USB-входа MCU ( пробовал подключаться только к Pro-Micro, только к Wemos и к обоим ).
В чем может быть проблема ?
@Guy . D, 👍0
Обсуждение1 ответ
Лучший ответ:
Вам не нужно преобразование логического уровня между 5-Вольтовым Micro Arduino и 3,3-Вольтовым Wemos D1 mini. 5 В ATmega 328p считывает 3,3 В как ВЫСОКИЙ, а esp8266 может выдержать логический уровень 5 В для тестов. Для длительного подключения вы можете добавить преобразование логического уровня с помощью делителя напряжения для преобразования 5 В ATmega TX в 3,3 В esp8266 RX.
Контакты RX/TX на Arduino Mini являются последовательными. Контакты RX/TX на Arduino Micro являются серийными 1. Последовательный только USB на Микро.
Но у него есть Tx
и Rx
фактические контакты, которые используют Serial.begib(9600)
таким же образом, @Guy . D
Это я знаю. Меняет ли это ответ Майенко?, @Guy . D
@Guy.D, разница в логическом уровне не проблема. поэтому я предположил, что вы использовали тот же скетч с Serial для Mini и Micro, вместо использования Serial1 для Micro. вам не нужно использовать сдвиг уровня для теста., @Juraj
да, использовался тот же код., @Guy . D
@Guy.D, тогда я угадал правильно, и в этом была проблема. для микро используйте Serial1 для связи с Wemos, @Juraj
Переход на " Serial1 всех
Серийных` экземпляров этой проблемы не решил. И решение Майенко тоже., @Guy . D
Ничего не передавалось... что / как бы вы посоветовали попробовать?, @Guy . D
Только при применении Майенко + ваших решений, решается проблема. пожалуйста, обновите, @Guy . D
Снятие RX ( на PRO-Micro стороне ). Он не работал, когда он был установлен, @Guy . D
- Как разделить входящую строку?
- Как вывести несколько переменных в строке?
- В чем разница между Serial.write и Serial.print? И когда они используются?
- Загрузка Arduino Nano дает ошибку: avrdude: stk500_recv(): programmer is not responding
- Программы построения последовательных данных
- Как узнать частоту дискретизации?
- Что такое Serial.begin(9600)?
- Очистить существующий массив при получении новой последовательной команды
Похоже, что вы пытались установить сдвиг уровня как на TX, так и на RX PIN. Вы хотите, чтобы он был *только* между TX-контактом Arduino и RX-контактом ESP. Не между TX ESP и RX Arduino., @Majenko
@Majenko см. Добавленную схему., @Guy . D
Да, я так и думал. ESP TX для Arduino RX должен быть простой провод, ничего больше., @Majenko
Также вы можете обнаружить, что ваши резисторы слишком высоки. Я использую 1k/2k., @Majenko
@Majenko - OK.. Теперь я понимаю :), @Guy . D
@Majenko - Я следил за онлайн-учебником :/, @Guy . D
Да, вы никогда не можете доверять этим онлайн-людям. =), @timemage
@timemage - Я вижу, вы острый последователь моих бесконечных ошибок ( Majenko 2 ) :), @Guy . D
@Majenko - чтобы избежать моего следующего вопроса, как предложил timemage в моем последнем вопросе, когда I2C между 3,3 и 5 В - мне понадобятся оба резистора ?, @Guy . D
Для I2C вам действительно нужен активный сдвигатель уровня I2C. I2C не пушпульный, как серийный, а открытый сток. Однако вы, вероятно, можете просто проигнорировать его, так как внутренние импульсные резисторы Arduino ограничат ток до такого крошечного количества, что диоды ESD в ESP8266 не будут заботиться (и есть несколько необоснованные слухи, что это 5V терпимо в любом случае)., @Majenko
@Majenko - Перемычка резистора 10K не решила проблему :(, @Guy . D
Ваше USB-питание поступает от компьютера?, @Majenko
@Majenko - Неправильно перепутал Rx @ Pro-Micro. Теперь, когда Tx имеет 10K и 20K, а Rx подключен напрямую +
Serial1
Юрая - Проблема теперь РЕШЕНА, @Guy . D