Оглавление:
Видео: Беспроводной последовательный порт (UART) для Arduino / STM32 / и т. Д .: 3 шага (с изображениями)
2024 Автор: John Day | [email protected]. Последнее изменение: 2024-01-30 11:53
Надеюсь, все согласятся со мной, что Arduino Serial - отличный инструмент для отладки ваших проектов. Что ж, это практически единственный вариант отладки Arduino. Но иногда невозможно или нецелесообразно подключить кабель USB от Arduino или любого другого микроконтроллера к вашему компьютеру.
Поэтому я сделал эту плату UART-WiFi на основе ESP8266-01, которая в наши дни стоит очень дешево. Платы небольшие, вы можете подключить их к макету, подключить питание, RX, TX и землю, и он будет передавать все, что получает от UART, на ваш компьютер через Wi-Fi и наоборот.
Функции:
- скорость передачи до 115200 (теоретически даже до 921600, но это не проверено)
- получает / отправляет данные от UART и отправляет / принимает данные через WiFi прямо на ваш компьютер через порт 23 (Telnet)
- 18 компонентов, детали стоят около 3,50 долларов США.
- Двусторонняя печатная плата 20 x 45 мм, совместимая с макетной платой
- 5 В толерантный вывод RX
- входное напряжение от 12 В до 3,3 В, потребление тока в среднем около 80 мА
Я использую эти доски около полугода и считаю их чрезвычайно полезными. Я даже предпочитаю их мостам USB-UART, потому что с моей платой я просто подключаю один из них к макетной плате, и мне не нужно беспокоиться о том, чтобы проложить кабели по всему моему столу. У вас также нет никакого другого оборудования, никаких свободных портов USB, и эти платы обеспечивают полную гальваническую развязку от вашего компьютера, что является хорошей мерой безопасности, и вам не нужно беспокоиться о различных потенциалах земли.
Шаг 1. Как это работает
После подачи питания на модуль он начинает попытки подключиться к заранее заданной сети Wi-Fi. Во время этой фазы мигает желтый светодиод. После подключения желтый светодиод продолжает гореть. После этого модуль ожидает подключения от клиента Telnet (см. Следующий шаг) и мигает зеленый светодиод. После успешного установления соединения терминал Telnet покажет вам подсказку с вопросом о желаемой скорости передачи. Вы вводите скорость передачи в терминал, и все готово! Теперь все, что вы вводите в терминал, отправляется через Wi-Fi, а затем выводится с контакта TX ESP8266. Точно так же все, что появляется на выводе RX, отправляется на терминал. По сути, вы не можете отличить последовательную консоль от telnet.
Светодиоды:
- желтый (крайний слева) - статус Wi-Fi, мигает - пытается подключиться, горит - подключено
- зеленый (второй слева) - статус Telnet. мигает - ожидает подключения, зеленый - подключено
- синий (два крайних правых) - RX и TX
Шаг 2: как его настроить
Связь
Единственная небольшая сложность заключается в том, что вам нужен какой-то идентификатор для каждого устройства Telnet (аналогично каждому последовательному порту, имеющему номер). В своем проекте я использовал статический IP. Обычно, когда устройство подключается к Wi-Fi, оно автоматически получает IP-адрес от DHCP-сервера. Это называется динамической IP-адресацией, но проблема в том, что IP-адрес может измениться. Поэтому я запрограммировал плату таким образом, чтобы она всегда получала предопределенный IP-адрес, в моем случае 192.168.2.20x, где x - номер платы. Это называется статической IP-адресацией. Затем вы просто подключаете консоль Telnet к 192.168.2.20x: 23, и все готово.
В качестве консоли вы можете использовать множество приложений, два из которых наиболее известны, вероятно, PuTTY или YAT (еще один терминал). Я использую последний, и в разделе изображений вы можете увидеть, как его настроить - вам просто нужно знать ранее упомянутый статический IP-адрес.
Прошивка
Прошивка написана в среде Arduino IDE, и вы можете найти ее на моем GitHub. Если вы хотите запрограммировать свой ESP8266, вам нужно заглянуть в заголовок и изменить там некоторые переменные, а именно:
- ssid - имя Wi-Fi, к которому плата должна подключаться
- pass - пароль для этого Wi-Fi
- ip - статический IP-адрес, который должна иметь плата; выберите что-то за пределами пула DHCP (или просто выберите что-то от 200 до 250, что обычно бесплатно)
- шлюз - IP вашего роутера
- подсеть
Вы можете получить последние две информации из командной строки, нажав Win + R, набрав «cmd», а затем набрав «ipconfig». Смотрите картинки.
Конечно, вам понадобится Arduino IDE, набор инструментов esp8266 и т. Д., Но есть много других руководств по этому поводу.
Доска
Вам также необходимо изготовить печатную плату. Хотя это несложно и теоретически вы можете сделать это дома, я рекомендую вам использовать печатную плату какого-нибудь китайского производителя. Это дешево и прекрасно работает. Я использовал ALLPCB и остался доволен.
Власть
Вам нужно подать питание на плату. Вы можете запитать его напрямую напряжением 3,3 В (перемычка JP1 в положении 3,3 В) или подать напряжение через регулятор 3,3 В (перемычка в другом положении). Регулятор может принимать напряжения до 12 В. Все конденсаторы уже встроены в плату.
Шаг 3: Заключение
Как я уже сказал, эти платы очень полезны для прототипирования не только с Arduino, но и с любым MCU в целом. И пользуюсь ими уже около полугода и проблем с ними не было.
Исходный код, файлы Eagle и некоторые изображения можно найти на моем GitHub или в zip-файле ниже. Но я рекомендую GitHub, так как может быть более новая версия.
Если у вас есть какие-либо вопросы, комментарии или предложения, не стесняйтесь оставлять их ниже.
Рекомендуемые:
Превращение USB-порта плат на базе SAMD21 в аппаратный последовательный порт !: 3 шага
Превращение USB-порта плат на базе SAMD21 в аппаратный последовательный порт! В настоящее время стандартным является использование USB-порта платы Arduino (или любой другой совместимой) в качестве эмулируемого последовательного порта. Это очень полезно для отладки, отправки и получения данных с наших любимых плат. Я работал над uChip, когда просматривал данные
UChip - последовательный порт через ИК-порт !: 4 шага
UChip - Serial Over IR!: Беспроводная связь стала ключевой функцией в наших проектах в настоящее время, и, говоря о беспроводной связи, первое, что мне приходит в голову, это Wi-Fi или BT, но обработка протоколов связи Wi-Fi или BT - это не так. простая задача и требует много
Прошивка ESP-01 (ESP8266) без переходника USB-последовательный порт с использованием Raspberry Pi: 3 шага
Прошивка ESP-01 (ESP8266) без адаптера USB-последовательный порт с использованием Raspberry Pi: это руководство поможет вам начать программирование микроконтроллера ESP8266 на модуле ESP-01 WIFI. Все, что вам нужно для начала работы (помимо модуля ESP-01, конечно), это перемычки Raspberry Pi с резистором 10 кОм, который я хотел отремонтировать
Использование ОЗУ ПК для Arduino через последовательный порт: 7 шагов
Использование ОЗУ ПК для Arduino через последовательный порт: мой друг вдохновил меня своим небольшим проектом Arduino. В этом небольшом проекте задействована Arduino UNO R3, которая считывает данные программой, созданной в среде Arduino IDE, и отправляет их в последовательный порт (USB-порт) программой C #, созданной в Visual Studio. Как это
Последовательный порт Android G1 для робота Arduino: 8 шагов
Последовательный порт Android G1 для робота Arduino: узнайте, как ваш мобильный телефон Android может управлять роботом с помощью платы Arduino. Телефон принимает команды через Telnet с другого телефона или ПК, поэтому вы можете управлять роботом удаленно. В противном случае этот проект не изменит G1, так что вы можете продолжить нас