Реклама ⓘ
Главная » Микроконтроллеры
Призовой фонд
на апрель 2024 г.
1. 100 руб.
От пользователей

Похожие статьи:


Реклама ⓘ

Wi-Fi модули ESP8266 и AVR микроконтроллер

Предлагаю сегодня познакомиться с новинкой радиолюбительской техники - WiFi модулем ESP8266. Он представляет собой что-то наподобие уже давно всем знакомого NRF24L01, но по размерам чуть меньше и немного другой функционал. WiFi модуль имеет как свои неоспоримые достоинства, так и некоторые недостатки, последнее как раз скорее всего отчасти связано с тем, что это новинка и разработчики весьма странным способом подошли к этому - информация распространяется очень туго (документация дает лишь общие представления о модулях, не раскрывая их полный функционал). Ну что же, будем ждать снисхождения компании предоставившей "железо".

Особо стоит отметить стоимость модуля: на текущий момент она составляет 3-4$ (например на AliExpress)

ESP8266 и NRF24L01
Справа NRF, слева ESP модуль.

Что конкретнее представляет собой эти WiFi модули? На плате расположена сама микросхема WiFi, помимо того в этом же корпусе имеется микроконтроллер 8051, который можно программировать, обходясь без отдельного микроконтроллера, но об этом в другой раз, далее на плате расположена микросхема EEPROM памяти, необходимая для сохранения настроек, также на плате модуля имеется вся минимально необходимая обвязка - кварцевый резонатор, конденсаторы, бонусом индикация светодиодами напряжения питания и передачи (приема) информации. Модуль реализует интерфейс только UART, хотя возможности микросхемы WiFi позволяют использовать и другие интерфейсы. Печатным проводником на плате сделана антенна WiFi необходимой конфигурации. Самая большая деталь - это разъем 4 х 2 штырька. 

ESP8266

Распиновка WiFi модуля ESP8266:

Распиновка WiFi модуля ESP8266

Для подключения в схему этого модуль нужно подключить питание на VCC и GND, на TX и RX соответствующие вывода UART принимающего устройства (помните, что RX соединяется с TX, а TX с RX) и CH_PD (типа чип энэбл, без него все горит, но ничего не работает) на плюс питания.

Параметры модуля ESP8266:

  • напряжение питания 3,3 В (причем сам то модуль терпит 5 В, но выводы ввода - вывода откажутся работать скорее всего)
  • ток до 215 мА в режиме передачи
  • ток до 62 мА во время приема
  • 802.11 b/g/n протокол
  • +20.5dBm мощность в режиме 802.11b 
  • SDIO (два вывода присутствуют на плате модуля, но ими особо нельзя пользоваться кроме как для служебных операций)
  • режимы сохранения энергии и сна для экономии энергии
  • встроенный микроконтроллер
  • управление по средством AT-команд 
  • температура функционирования от -40 до +125 градусов Цельсия
  • максимальная дистанция связи 100 метров

Как было указано, модулем можно управлять посредством AT-команд, однако их полный список не известен, самое необходимое представлено ниже:

 #  Команда Описание
 1   

 AT

 Просто тестовая команда, при нормальном состоянии модуль ответит OK
 2  AT+RST

 Перезагрузка модуля, после введения команды выдаст лог перезагрузки в конце и ответ ready 

 3

 AT+GMR 

 Проверка версии прошивки модуля, ответом будет версия и ответ OK
 4

 AT+CWMODE=<режим>

 Задать режим работы модуля mode: 1 - клиент, 2 - точка доступа, 3 - совмещенный режим, ответ OK 
 5

 AT+CWLAP

 Получить список точек доступа, к которым можно подключиться, ответ список точек и OK
 6

 AT+CWJAP=<имя>,<пароль> 

 Присоединиться к точке доступа, задав ее имя и пароль, ответ OK
 7

 AT+CWQAP

 Отключиться от точки доступа, ответ OK
 8

 AT+CWSAP=<имя>,<пароль>,<канал>,<шифрование>

 Установить точку доступа самого модуля, задав ее параметры, ответ OK
 9

 AT+CWLIF

 Получить список присоединенных устройств
 10

 AT+CIPSTATUS 

 Получить текущий статус TCP соединения
 11

 AT+CIPSTART

 Для одного соединения (+CIPMUX=0):
 AT+CIPSTART=<тип>,<адрес>,<порт>
 Для мульти соединения (+CIPMUX=1):
 AT+CIPSTART=<айди>,<тип>,<адрес>,<порт>

 Соединение TCP/UDP
<айди>— идентификатор соединения
<тип>— тип соединения: TCP или UDP
<адрес>— адрес IP или URL
<порт>— порт
 12

 AT+CIPMODE= <режим>

 Установить режим передачи:

  <режим>= 0 — not data mode (сервер может отправлять данные клиенту и может принимать данные от клиента)
  <режим>= 1 — data mode (сервер не может отправлять данные клиенту, но может принимать данные от клиента)

 13

 AT+CIPSEND

 Для одного соединения (+CIPMUX=0):
 AT+CIPSEND=<длина>
 Для мульти соединения (+CIPMUX=1):
 AT+CIPSTART=<айди>,<длина>

 Отправить данные
 <айди>— идентификатор соединения
 <длина>— количество отправляемых данных
 Передаваемые данные отправляются после ответа модулем символа > , после ввода команды
 14

 AT+CIPCLOSE

 Для одного соединения (+CIPMUX=0):
 AT+CIPCLOSE
 Для мульти соединения (+CIPMUX=1):
 AT+CIPCLOSE=<айди>

 Закрыть соединение.  Параметр для мультипоточного режима <айди>— идентификатор соединения. Ответом модуля должно быть OK и unlink 
 15

 AT+CIFSR

 Получить IP модуля
 16

 AT+CIPMUX= <режим>

 Задать количество соединений,  <режим>=0 для одного соединения,  <режим>=1 для мультипоточного соединения (до четырех подключений)
 17

 AT+CIPSERVER=  <режим>,  <порт>

 Поднять порт.  <режим>- режим скрытности (0 - скрыт, 1 - открыт), <порт> - порт 

 18

 AT+CIPSTO=<время>

 Установить время одного соединения на сервере
 19

 AT+CIOBAUD=<скорость>

 Для версий прошивки от 0.92 можно задать скорость UART
 20

 Прием информации  

Данные принимаются с преамбулой +IPD, после которой следует информация о принятых данных, а потом сама информация

Для одного соединения (+CIPMUX=0): +IPD,<длинна>:<передаваемая информация>

Для мульти соединения (+CIPMUX=1): +IPD,<айди>,<длинна>:<передаваемая информация>

Пример: +IPD,0,1:x - принят 1 байт информации

Как вводятся команды: 

  • Выполнение команды: <Команда>.
  • Просмотреть статус по команде: <Команда>?
  • Выполнить команду с заданием параметров: <Команда>=<Параметр>

При покупке модуля можно проверить версию прошивки модуля через команду AT+GMR. Версию прошивки можно обновить при помощи отдельного софта или при версии прошивки от 0.92 это можно делать только при помощи команды AT+CIUPDATE. При этом модуль нужно соединить с роутером для доступа к интернету. Прошивка и программа для прошивки модуля до версии 0,92 будет предоставлена в конце статьи. Для прошивки через софт необходимо вывод GPIO0 подсоединить к плюсу питания. Это включит режим обновления модуля. Далее выбрать файл прошивки модуля в программе и соединиться с модулем WiFi, обновление прошивки пойдет автоматически после соединения. После обновления последующие обновления прошивки возможны будут только через интернет.

Теперь, зная организацию команд модуля WiFi, на его основе можно организовать передачу информации по средством беспроводной связи, в чем, я считаю, их основное назначение. Для этого мы будем использовать микроконтроллер AVR Atmega8 в качестве устройства, которое управляется через беспроводной модуль. Схема устройства:

Схема подключения ESP8266 к AVR-микроконтроллеру

Суть схемы будет заключаться в следующем. Термодатчиком DS18B20 измеряется температура, обрабатывается микроконтроллером и передается по WiFi сети с небольшим промежутком по времени. При этом контроллер следит за получаемыми данными по WiFi, при получении символа 'а' загорится светодиод LED1, при получении символа 'b' светодиод потухнет. Схема больше демонстративная, чем полезная, хотя ее можно использовать для удаленного контроля температуры, например, на улице, необходимо только написать софт для компьютера или телефона. Модуль ESP8266 требует питания напряжением 3,3 вольта, поэтому вся схема запитывается от стабилизатора AMS1117 на 3,3 вольта. Микроконтроллер тактируется от внешнего кварцевого генератора на 16 МГц с обвязкой конденсаторами на 18 пФ. Резистор R1 подтягивает ножку микроконтроллера reset к плюсу питания для исключения самопроизвольного перазапуска микроконтроллера при наличии каких-либо помех. Резистор R2 выполняет функцию ограничения тока через светодиод, чтобы не сгорел ни он, ни вывод МК. Эту цепочку можно заменить, например, на цепь реле и использовать схему для дистанционного управления. Резистор R3 необходим для работы термометра по шине 1-Wire. Схему нужно питать от достаточно мощного источника, так как пиковое потребления WiFi модуля может доходить до 300 мА. В этом, наверное, и кроется главный недостаток модуля - большое потребление. Такая схема от батареек долго может не проработать. При подаче питания на схему во время ее инициализации светодиод должен 5 раз моргнуть, что будет свидетельствовать об успешном открытии порта и предыдущих операциях (после включения схемы по нажатию кнопки ресет светодиод может моргать по 2 раза - это нормально).

Более подробно работу схемы можно посмотреть в исходном коде прошивки микроконтроллера на языке Си, который будет представлена ниже.

Схема собиралась и отлаживалась на макетной плате, термометр DS18B20 используется в формате "зонда" с металлическим колпачком:

Для "общения" с такой схемой можно использовать как стандартный WiFi контроллер компьютера, так и построить схему приемопередатчика при помощи USB-UART преобразователя и еще одного модуля ESP8266:

К слову о переходниках и терминалах, эти модули достаточно капризны к ним, хорошо работают с преобразователем на CP2303 и отказываются адекватно работать с преобразователями, построенными на микроконтроллерах (самодельных), терминал лучше всего подходит Termite (там в настройках есть автоматическое добавление символа возвращения каретки, без чего также адекватно модуль не будет работать с терминалом). А вот просто при подключении к микроконтроллеру модули работают без нареканий.

Итак, для обмена информацией с микроконтроллером по WiFi будем использовать второй модуль, подключенный к компьютеру и терминал Termite. Перед началом работы со схемой каждый модуль нужно подключить через USB-UART и проделать несколько операций - настроить режим работы, создать точку подключения и подключиться к точке, к которой в последующем будем подключаться для обмена информацией, AT командой узнать IP адрес модулей WiFi (необходимо будет для подключения модулей друг к другу и обмена информацией). Все эти настройки сохранятся и будут автоматически применяться при каждом включении модуля. Таким образом можно сэкономить немного памяти микроконтроллера на командах подготовки модуля к работе. 

Модули работают в совмещенном режиме, то есть могут быть как клиентом, так и точкой доступа. Если по настройкам модуль уже работает в этом режиме (AT+CWMODE=3), то при повторной попытке настроить в этот же режим модуль выдаст ответ "no change". Чтобы настройки вступили в силу нужно перезапустить модуль или ввести команду AT+RST.

После аналогичных настроек второго модуля в списке доступных точек появится наша точка под названием "ATmega":

В нашем случае схема WiFi будет такой - модуль с микроконтроллером будет подключаться к домашнему роутеру (фактически микроконтроллер в таком случае может выходить в интернет, если это прописать), далее поднимать порт и действовать по алгоритму. На другой стороне модуль также подключим к роутеру и соединимся с микроконтроллером через TCP (как показано на скриншоте, для этого нужно настроить режим передачи и количество соединений командами AT+CIPMODE и AT+CIPMUX соответственно и ввести команду на соединение с сервером AT+CIPSTART). Все! Если подключиться к точке доступа (WiFi точка только, к серверу нужно переподключаться каждый раз, ровно также каждый раз сервер нужно поднимать на другом конце каждый раз при включении питания) и перезапустить модуль, то надобности самостоятельно еще раз присоединяться нет, это тоже сохраняется в памяти и автоматически подключается при доступности при включении модуля. Удобно, однако.

Теперь данные о температуре автоматически должны пойти на компьютер, а по командам с компьютера можно управлять светодиодом. Для удобства можно написать софт под Windows и мониторить температуру по WiFi.

Командой AT+CIPSEND мы отправляем данные, при приеме данных появится сообщение "+IPD,<айди>,<длинна информации>:" после двоеточия идет наша полезная (передаваемая) информация, которую нужно использовать.

Одно НО - желательно модуль питать не от батареек, а от стационарного питания розетки (естественно через блок питания) из-за большого потребления модулей.

Это один из вариантов передачи информации между модулями WiFi, можно их подключать также без роутера напрямую друг к другу, а можно к модулю подключаться через стандартный WIFi компьютера и работать уже через него.

Функционал задействован самый очевидный этих модулей, кто знает, что там еще разработчики приготовили для нас!

Для программирования микроконтроллера нужно использовать следующую комбинацию фьюз битов:

В заключении хочется отметить, что это действительно революция интернет вещей! При цене модуля в несколько зеленых единиц, мы имеем полноценный Wi-Fi модуль с огромными возможностями (которые пока что ограничивают разработчики сего чуда), область применения просто не ограничена - везде, где позволит фантазия, а учитывая тот факт, что в этом модуле уже присутствует микроконтроллер, отпадает надобность в использовании внешнего микроконтроллера, однако который нужно как-то программировать. Так что, друзья, вот такое дело - даем Wi-Fi каждой розетке!

К статье прилагается прошивка для микроконтроллера, исходный код в программе AVRStudio4, документация на микросхему модуля Wi-Fi, программа для обновления прошивки модуля и прошивка модуля версии 0,92 (архив разбит на 3 части, потому что общий размер его слишком велик, чтобы приложить к статье), а также видео, демонстрирующее работу схемы (на видео управляемая плата, соединенная по WiFi с управляющим модулем, управляемая плата периодически передает информацию о температуре, при погружении термометра в воду на видео видно, что температура начинает падать, далее если передать символ "а" от управляющего модуля, на управляемой плате загорится светодиод, а если символ "b", то он потухнет).

На этом, кажется, все. Не забывайте писать свои замечания и пожелания, при наличии внимания к этой теме будем развивать идеи для новых.

Список радиоэлементов

Обозначение Тип Номинал Количество ПримечаниеМагазинМой блокнот
U1 WiFi модульESP82661 Поиск в магазине ОтронВ блокнот
IC1 МК AVR 8-бит
ATmega8
1 Поиск в магазине ОтронВ блокнот
IC2 Датчик температуры
DS18B20
1 Поиск в магазине ОтронВ блокнот
VR1 Линейный регулятор
AMS1117-3.3
1 Поиск в магазине ОтронВ блокнот
C1, C2 Конденсатор18 пФ2 Поиск в магазине ОтронВ блокнот
C3, C7, C8 Электролитический конденсатор100 мкФ3 Поиск в магазине ОтронВ блокнот
C4, C6, C9 Конденсатор100 нФ3 Поиск в магазине ОтронВ блокнот
C5 Электролитический конденсатор220 мкФ1 Поиск в магазине ОтронВ блокнот
R1 Резистор
10 кОм
1 Поиск в магазине ОтронВ блокнот
R2 Резистор
390 Ом
1 Поиск в магазине ОтронВ блокнот
R3 Резистор
4.7 кОм
1 Поиск в магазине ОтронВ блокнот
Z1 Кварц16 МГц1 Поиск в магазине ОтронВ блокнот
LED1 Светодиод1 Поиск в магазине ОтронВ блокнот
S1 Тактовая кнопкаTC-A1091 Поиск в магазине ОтронВ блокнот
Добавить все

Скачать список элементов (PDF)

Прикрепленные файлы:

Теги:

Опубликована: 0 5
Я собрал 0 9
x

Оценить статью

  • Техническая грамотность
  • Актуальность материала
  • Изложение материала
  • Полезность устройства
  • Повторяемость устройства
  • Орфография
0

Средний балл статьи: 4.8 Проголосовало: 9 чел.

Комментарии (34) | Я собрал (0) | Подписаться

0
BARS_ #
А при помощи такого модуля можно соединиться с обычной Wi-Fi сетью и получить данные из интернета? Например, ту же погоду, время, или еще что.
Ответить
+1

[Автор]
Gauss #
Как раз таким способом он получает обновления, насколько можно судить, а насчет погоды - главное знать что и как отправлять (я не знаком с протоколами связи интернет), с веб узлами соединиться можно и получить от туда информацию тоже посылкой запроса после соединения, в ответ придет что-то от сайта
Отредактирован 16.11.2014 14:12
Ответить
0
BARS_ #
Спасибо. Пожалуй, закажу такой модуль.
Ответить
+2

[Автор]
Gauss #
При заказе можно глянуть на вариант модуля (этот фактически просто беспроводная связь) - есть с разведенными GPIO (на которых и ШИМ поддерживается, которые без внешнего МК могут рулить чем-нибудь за счет внутреннего МК)
Ответить
+1
BARS_ #
Спасибо
Ответить
0
maksms #
На выведенных GPIO данного модуля тоже ШИМ поддерживается - сам лично проверял.
А так да, уже давно продаются эти модули без использования дополнительных м/к. SDK в интернете имеется. В таком случае возможности модуля неплохие появляются: и управление устройствами и чтение датчиков и возможность создания веб сервера.
Ответить
0

[Автор]
Gauss #
Они в продаже с середины лета появились, а вменяемой документации со всеми инструкциями так и нет, хотелось бы что-нибудь от создателей.
Да можно все что угодно организовать, написав прошивку для внутреннего МК, что на сегодня не совсем организовано.
Сервер в сети создается и сейчас, а вот WEB не пробовал. Кстати с WEB можно не иметь привязки к определенной сети, а просто выход в интернет - имеем доступ к в любой точке земли к нашему датчику температуры
Ответить
0
ice3dfx #
Заказал вчера три таких модуля, жду не дождусь, хочу потестить. Спасибо за список команд.
Ответить
+1

[Автор]
Gauss #
К сожалению это самый минимум (хотя для большинства идей этого хватает), что есть, а что еще разработчики там заложили - вот это еще интереснее
Ответить
0
Zlodey #
(причем сам то модуль терпит 5 В, но выводы ввода - вывода откажутся работать скорее всего)
Жуть...
Ответить
0

[Автор]
Gauss #
И не говори...
Ответить
0
S_007 #
А кто нить видел SDK для винды? Везде попадаются только для линукс
Ответить
0

[Автор]
Gauss #
Скорее бы вообще увидеть что-нибудь от авторов самой микросхемы
Ответить
0
Владислав Юров #
Вопрос к автору видео, как работает данный модуль в среде других вай-фай точек, сильные ли помехи, какую максимальную дистанцию удалось получить, фактор стенок между модулями? На али есть несколько вариантов этого модуля... Аж 5 штук видел, исключительно для rs232, выведены все пины, антенна либо на плате "нарисована" или стоит что-то из керамики или запаян разъем для подключения внешней антенны... вот думаю какой лучше (точнее мощнее получиться). Было бы интересно узнать результаты некоторых таких испытаний, если будет время
Ответить
0

[Автор]
Gauss #
Все как у средне статистического WiFi в виде USB донгла. Логически, с внешней антенной параметры наиболее лучшие (как у роутера, например)
Ответить
0

[Автор]
Gauss #
Кстати, при непосредственной близости двух таких модулей друг от друга они глушат друг другу сигналы более слабых и отдаленных точек доступа, у меня при таком расположении обнаруживает примерно 5 точек из 15-20 доступных.
Может быть это в порядке вещей для WiFi
Ответить
0
ice3dfx #
Сегодня пришли мои модули esp8266. Я уже был готов начать тестить, но сразу же застрял на подключении. Объясню суть проблемы:
1. подключил vcc esp8266 к пину 3.3 v arduino uno (использую только для питания)
2. gnd esp8266 к gnd arduino uno
3. chipenable к пину 3.3 v arduino uno
4. rx esp8266 к tx usb to uart 2303 (и tx к rx)
5. включаю терминал, скорость 115200, посылаю команду AT, ответа нет
6. включаю на скорости 9600, сразу же приходит сообщение system ready, Vendor:www.ai-thinker.com. На команду AT, модуль не реагирует.
7. Прочел где то, что нужно обновить прошивку. Скачал программу для обновления прошивки, зажал gpo0 к gnd, обновил прошивку ( присутствует в архиве к статье)
8. Подключаю на скорости 115200, приходит сообщение с непонятными символами и в конце слово ready.
9. При отправке команд, модуль возвращает ехо ответ.

Я в тупике, проверил уже два из трех модулей, эффект такой же. Даже терминал скачал как у вас, есть идеи в чем может быть проблема?
Ответить
0

[Автор]
Gauss #
У меня так же примерно с самодельным преобразователем на USB-UART на tiny2313, купил переходник интерфейсов на спецовой микросхеме PL2303 (можно что-нибудь из FT) и все заработало, при этом чисто соединение с контроллером и wifi общается без проблем
Ответить
0
ice3dfx #
Что вы имеете в виду, когда говорите "самодельный преобразователь"?
У меня такой usb to uart: http://r.ebay.com/UHte3I
Ответить
0

[Автор]
Gauss #
usb-uart tiny2313 - запрос в гугле, эта самоделка не работала с wifi при любых настройках терминала
Отредактирован 27.12.2014 10:44
Ответить
0
ice3dfx #
Нашел корень проблемы, неверно был указан переход на новую строку (linebreak). Нужно указать CR-LF для корректной работы. Спасибо.
Прикрепленный файл: termitesetup.png
Ответить
0

[Автор]
Gauss #
Вот этот момент, возможно, я и упустил
Отредактирован 27.12.2014 10:39
Ответить
0
Евгений #
Вопрос к автору, как можно организовать передачу данных на вэб-страничку, т.е подключить esp8266 к arduino получить значение температуры с датчика и отправить это значение на вэб-страничку? Спасибо.
Ответить
0

[Автор]
Gauss #
Передачу по интернет я не делал, только через локальную сеть, но можно поэкспериментировать с командами для web
Ответить
+1
AlexeyN #
Я не совсем уловил... ATMega8 исходя из его Datasheet не может работать от 3,3В... (диапазон 4,5 - 5,5 В)... На низком напряжении питания может работать ATMega8L (2,7 - 5,5В)... В вашей схеме ATmega8L? Если да, то как вы добились от нее работы на 16 МГц от внешнего резонатора, если по Datasheet ATMega8L может тактироваться максимально 8 МГц? Для стабильной работы схемы необходимо Мегу питать 5 вольтами, модуль питать 3,3В и между ними ставить согласователь уровней... Иначе данная схема "проживет" недолго... Конечно, на "поиграться" хватит, но для серьезного проекта не пойдет...
И еще один вопрос возник после просмотра исходного кода: вызвал сомнение регистр UBRRL = 8; // скорость обмена
По даташиту это скорость 115200
Как? При тактовой частоте 16МГц вы собираетесь получать данные по USART с коэффициентом ошибки -3,7%? Если в даташите на ATMega8(L) четко указано, что скорость необходимо выбирать с коэффициентом ошибки не более 0,3%...
Так вот, чтобы схема была работоспособной помимо питания и согласователя уровней необходимо либо снизить скорость USART до 9600, либо поставить кварцевый резонатор кратный USART (14,7456 МГц)
Ответить
0

[Автор]
Gauss #
мега8 в чистом виде уже давно снята с производства, читать даташиты умеешь, это хорошо, ей замена стала та же мега8 с индексом а, всегда пишут просто мегу, потому что снятый с производства контроллер уже не купить, да, неточность, но это уже как-то априори
Да не желательно большие ошибки, но если сам соберешь макет и попробуешь разные варианты, то увидишь, что 3% не играют роли на передаваемые данные, если только не передавать огромный массив символов за раз
И это как бы показательный проект
Ответить
+1
AlexeyN #
Во-первых, давайте все-таки останемся на расстоянии "Вы"...

Во-вторых, информацию о снятии с производства ATMega8 будет интересно послушать даже самому Atmel...

Ну, и, в третьих, да простят меня администраторы форума, вот Вам ссылка: http://www.atmel.com/devices/ATMEGA8.aspx
Обратите внимание на дату ревизии Datasheet. Февраль 2013 года. То, что в схему (и как следствие - в Datasheet) устройства не вносились изменения в течение 2-х лет не говорит о прекращении его производства. А так же обратите внимание на таблицу внизу страницы... Даже сам Atmel предлагает приобрести on-line данный МК...

Я не пытаюсь принизить Вашего достоинства и не превозношу своего умения читать документацию. Если Вы делаете нечто "показательное" - показывайте правильно... Не вводите людей в заблуждения... Не надо изначально закладывать "грабли", а потом совместными усилиями пытаться эти грабли обойти...

Поверьте, 3,7% ошибок - это очень много. Даже при передаче строки с командой подключения к AP (в Вашем примере это уже 39 символов) есть риск получить 12 бит каши... и будет она в конце этой строки, где идет как-раз-таки пароль... А потом долго гадать, почему модуль не соединяется с AP.

Можно долго спорить и доказывать свою правоту. Ваше описание работы самого модуля ESP8266 куда более чем исчерпывающее. Собственно тема-то о нем, а не о Меге.
Ответить
0
ice3dfx #
Можно заменить кварцевый резонатор на 4.032 МГц. ATmega стабильно работает до 8 МГц при напряжении от 2.7 В. (27.3 Speed Grades Figure 27-1. Maximum Frequency vs VCC.)
Ответить
0
Artos5 #
Доброй ночи дорогие друзья!
Что я делаю не так? Не хочет соединяться...
AT+CIPSTART=1,"TCP","192.168.88.12",81

Получаю ответ железки:

ERROR
Unlink

Или надо сразу же слать данные в этот порт?
Ответить
0

[Автор]
Gauss #
Все команды выполнены последовательно и сервер поднят на другом конце?
http://cxem.net/mc/images/mc337-11.png
Ответить
+1
Андрей #
Классная штука! Спасибо за созданую тему!
Ответить
0
ZXZ_RUS #
В какой среде писались исходники для данного проекта?
Ответить
0
fil #
А не проще подключить датчик напрямую к модулю ESP ?
Ответить
0
Edward #
Канешно проще! Примеров куча с разными датчиками. Последние версии ESP работают более устойчивее и имеют больше памяти на борту. Также продаются с микросхемами для подключения к USB.
Ответить
Добавить комментарий
Имя:
E-mail:
не публикуется
Текст:
Защита от спама:
В чем измеряется электрическое сопротивление?
Файлы:
 
Для выбора нескольких файлов использйте CTRL

Pickit 2 - USB-программатор PIC-микроконтроллеров
Pickit 2 - USB-программатор PIC-микроконтроллеров
iMAX B6 - зарядное для Lion, LiPo, LiFe, Pb, NiCd и NiMH аккумуляторов Конструктор для сборки: предусилитель на лампе 6N3
вверх