Монк . - Программируем Arduino

Здесь есть возможность читать онлайн «Монк . - Программируем Arduino» весь текст электронной книги совершенно бесплатно (целиком полную версию без сокращений). В некоторых случаях можно слушать аудио, скачать через торрент в формате fb2 и присутствует краткое содержание. Год выпуска: 2017, ISBN: 2017, Издательство: Издательский дом Питер, Жанр: Базы данных, на русском языке. Описание произведения, (предисловие) а так же отзывы посетителей доступны на портале библиотеки ЛибКат.

Программируем Arduino: краткое содержание, описание и аннотация

Предлагаем к чтению аннотацию, описание, краткое содержание или предисловие (зависит от того, что написал сам автор книги «Программируем Arduino»). Если вы не нашли необходимую информацию о книге — напишите в комментариях, мы постараемся отыскать её.

Программируем Arduino — читать онлайн бесплатно полную книгу (весь текст) целиком

Ниже представлен текст книги, разбитый по страницам. Система сохранения места последней прочитанной страницы, позволяет с удобством читать онлайн бесплатно книгу «Программируем Arduino», без необходимости каждый раз заново искать на чём Вы остановились. Поставьте закладку, и сможете в любой момент перейти на страницу, на которой закончили чтение.

Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Arduino и WiFi

Главная проблема подключения к Интернету через Ethernet заключается в необходимости прокладки кабеля. Если вы хотите подключить Arduino к Интернету или сети без использования проводов, то вам потребуется плата расширения WiFi (рис. 12.3). Эти платы стоят довольно дорого, но есть более дешевые альтернативы сторонних производителей, такие как Sparkfun WiFly (https://www.sparkfun.com/products/9954).

Рис 123Плата Arduino WiFi Библиотека Ethernet Библиотека Ethernet - фото 81

Рис. 12.3.Плата Arduino WiFi

Библиотека Ethernet

Библиотека Ethernet претерпела существенные изменения с момента выпуска в 2011 году версии Arduino 1.0. Она не только позволяет плате Arduino с адаптером Ethernet действовать в роли веб-сервера или веб-клиента (возможность посылать запросы, подобно браузерам), но и реализует дополнительные возможности, такие как поддержка протокола динамической конфигурации сетевого узла (Dynamic Host Configuration Protocol, DHCP), автоматически присваивающего плате IP-адрес.

ПРИМЕЧАНИЕ

Превосходное описание библиотеки Ethernet можно найти в официальной документации Arduino: http://arduino.cc/en/reference/ethernet10.

Создание соединения

На первом этапе, прежде чем приступить к взаимодействиям по сети, необходимо установить соединение с сетью. Эту задачу решает функция Ethernet.begin(). Она позволяет вручную указать все параметры соединения с использованием следующего синтаксиса:

Ethernet.begin(mac, ip, dns, gateway, subnet)

Рассмотрим каждый из этих параметров:

• Mac — MAC-адрес сетевой карты (я расскажу о нем чуть позже);

• Ip — IP-адрес платы (можно выбрать любой допустимый для вашей сети);

• Dns — IP-адрес сервера доменных имен (Domain Name Server, DNS);

• Gateway — IP-адрес шлюза для выхода в Интернет (ваш домашний концентратор);

• Subnet — маска подсети.

Этот синтаксис кажется немного пугающим тем, кто не имеет опыта настройки параметров подключения к сети вручную. К счастью, все параметры, кроме mac, являются необязательными, и в 90% случаев вам придется указывать только параметры mac и ip или, весьма вероятно, только mac. Все остальные параметры будут настроены автоматически.

MAC-адрес, или адрес доступа к среде (Media Access Control), — это уникальный идентификатор сетевого интерфейса. Иными словами, это адрес платы расширения Ethernet или чего-то другого, предоставляющего сетевой интерфейс в распоряжение Arduino. Этот адрес должен быть уникальным только для вашей сети. Его обычно можно найти на наклейке с обратной стороны платы Ethernet или WiFi (рис. 12.4) или на упаковке. Если вы пользуетесь старой платой, не имеющей MAC-адреса, то можете просто создать свой адрес. Но не используйте в своей сети один и тот же адрес дважды.

Можно создать соединение с сетью с применением DHCP и получить динамический IP-адрес, как показано далее:

#include

#include

byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };

void setup()

{

Ethernet.begin(mac);

}

Рис 124Наклейка с MACадресом на плате WiFi Если потребуется присвоить плате - фото 82

Рис. 12.4.Наклейка с MAC-адресом на плате WiFi

Если потребуется присвоить плате фиксированный IP-адрес, что желательно, когда плата Arduino действует в роли веб-сервера, используйте примерно такой код:

#include

#include

byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };

byte ip[] = { 10, 0, 1, 200 };

void setup()

{

Ethernet.begin(mac, ip);

}

IP-адрес в параметре ip должен быть допустимым для вашей сети. Если вызвать функцию Ethernet.begin без параметра с IP-адресом, она по­пытается получить его с использованием DHCP и вернет 1, если соединение было установлено и динамический IP-адрес успешно получен, в противном случае вернет 0. Можно написать тестовый скетч, который будет устанавливать соединение и вызывать функцию localIP для получения IP-адреса, присвоенного Arduino. Следующий пример выполняет такую проверку и выводит сообщение с результатами в монитор последовательного порта. Это полноценный скетч, который вы можете опробовать самостоятельно. Но не забудьте заменить в коде MAC-адрес на указанный на вашей плате:

// sketch_12_01_dhcp

#include

#include

byte mac[] = { 0x00, 0xAA, 0xBB, 0xCC, 0xDE, 0x02 };

void setup()

{

Serial.begin(9600);

while (!Serial){}; // для совместимости с Leonardo

if (Ethernet.begin(mac))

{

Serial.println(Ethernet.localIP());

}

else

{

Serial.println("Could not connect to network");

}

}

void loop()

{

}

Настройка веб-сервера

Проект «Физический веб-сервер», описанный далее в этой главе, иллюстрирует организацию скетча, реализующего веб-сервер. А в этом разделе мы рассмотрим функции, помогающие реализовать веб-сервер.

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Похожие книги на «Программируем Arduino»

Представляем Вашему вниманию похожие книги на «Программируем Arduino» списком для выбора. Мы отобрали схожую по названию и смыслу литературу в надежде предоставить читателям больше вариантов отыскать новые, интересные, ещё непрочитанные произведения.


Отзывы о книге «Программируем Arduino»

Обсуждение, отзывы о книге «Программируем Arduino» и просто собственные мнения читателей. Оставьте ваши комментарии, напишите, что Вы думаете о произведении, его смысле или главных героях. Укажите что конкретно понравилось, а что нет, и почему Вы так считаете.

x