38
3. Наблюдаем вывод цифр на экран семисегментного индикатора.
Проект 3: Беспроводная связь. Модуль Wi–Fi ESP8266
В
этом эксперименте мы представим модуль ESP8266, с
помощью
которого вы можете подключить плату Arduino к сетям Wi-Fi, и напишите
эскиз для передачи данных датчика температуры в
веб-службу People
Monitoring.
Обязательные компоненты:
• контроллер Arduino UNO R3;
• макетная плата;
• ESP8266 ESP - 01 модуль;
• датчик температуры LM335;
• резистор 2,2 кОм;
• Папа - папа провода.
• блок питания от 5 до 1 А;
• преобразователь напряжения 3-30 В.
После появления ESP8266 материнские платы на базе Wi-Fi стали по-
настоящему популярными. Огромные возможности и минимальная цена
сделали свое дело. Платы на ESP8266 - это не
просто модули для связи по
Wi-Fi. Чип по сути является микроконтроллером с
собственными портами
SPI, UART и GPIO, что означает, что
модуль может использоваться
автономно без Arduino и других плат микроконтроллера.
Существует около 11 официальных модификаций платы. У нас самая
простая плата - ESP01. Распиновка платы показана на рисунке 2.6. Мы
покажем, как использовать его в качестве модуля Wi-Fi для Arduino.
39
Рисунок 2.6 – Распиновка модуля ESP–01
Модуль ESP8266 рассчитан только на 3,3 В. Поэтому нам необходим
источник питания 3,3 В. Схема подключения модуля ESP-01 к плате Arduino
показана на рисунке 2.7.
Связь с модулем с помощью AT-команд. Список основных AT-команд
приведен в табл. 30,1.
Загрузите эскиз, показанный в листинге 3, на плату
Arduino и отправьте AT-команды в модуль ESP-01. Результат выполнения
команды показан на рисунке 2.6.
Рисунок 2.7 – Схема подключения модуля ESP–01 к Arduino
Листинг 3
#include
SoftwareSerial mySerial (2, 3); // specify pins rx and tx
void setup ()
{
pinMode (2, INPUT);
pinMode (3, OUTPUT);
Serial.begin (9600);
mySerial.begin (9600);
}
40
void loop ()
{
if (mySerial.available ())
{
int c = mySerial.read (); // read from the software port
Serial.write (s); // write in hardware - port
if (Serial.available ())
{
int c = Serial.read (); // read from the hardware - port
mySerial.write (s); // write to the software port
}
}
Достарыңызбен бөлісу: