Глава 14. Сетевой обмен с помощью Arduino
181
Рис. 14.2. Подключение Ethernet shield к Arduino
с ними по сети. Плата совместима с Arduino Uno и Mega (при использовании биб-
лиотеки
Ethernet Library
). Картридер microSD доступен при помощи библиотеки
SD Library
. При применении этой библиотеки вывод 4 используется для сигнала SS
(Slave Select).
Последние версии платы также имеют контроллер сброса, который позволяет быть
уверенным в правильном перезапуске W5100 при запуске. Предыдущие версии
платы были не совместимы с Arduino Mega и требовали ручного сброса после
включения. Предыдущая версия платы имела разъем для полноразмерной карты
SD, что в настоящее время не поддерживается.
6-контактный разъем для последовательного программирования совместим с кабе-
лями и платами-переходниками FTDI-USB. Он поддерживает автоматический
сброс, что позволяет загружать скетчи без нажатия кнопки сброса на плате. При
подключении через адаптер FTDI-USB, Arduino и Ethernet shield получают питание
от адаптера.
Как уже отмечалось, текущая версия платы поддерживает подключение адаптера
Power over Ethernet (PoE) для получения питания от обычной витой пары 5 катего-
рии, а также обеспечивает:
совместимость с EEE802.3af;
низкие пульсации и шум на выходе (100m Vpp);
диапазон входного напряжения от 36 до 57 В;
защиту от перегрузки и короткого замыкания;
выходное напряжение 9 ВУ;
высокоэффективный DC/DC-преобразователь: 75 % при нагрузке в 50 %;
напряжение пробоя изоляции 1500 В (на входе и выходе).
182
Часть III. Практическое применение Arduino
Arduino осуществляет связь с W5100 и картой SD посредством шины SPI (через
разъем ICSP header). Она расположена на выводах 11, 12 и 13 платы Duemilanove и
выводах 50, 51 и 52 платы Mega. На обеих платах вывод 10 используется для выбо-
ра W5100 и ввод 4 — для карты SD. Эти контакты не могут быть использованы для
другого ввода/вывода. На плате Mega аппаратный вывод SS 53 не используется для
выбора ни W5100, ни карты SD, но он должен быть сконфигурирован на вывод,
иначе интерфейс SPI не будет работать.
Поскольку W5100 и карта SD разделяют шину SPI, одновременно работать они не
могут. Если вы используете оба этих периферийных устройства в своей программе,
вам следует позаботиться о соответствующих библиотеках. Если вы не используете
одно из этих периферийных устройств, вам следует явно отключить его. Чтобы
сделать это, сконфигурируйте вывод платы 4 как выход и запишите в него "1". Для
W5100 установите на выводе 10 высокий уровень.
Кнопка сброса платы перезапускает и дочернюю плату, и плату Arduino.
Плата имеет несколько индикаторных светодиодов:
PWR
— индикация наличия питания платы;
LINK
— индикация наличия сетевого линка, мигание при отправке или получе-
нии данных;
FULLD
— индикация полнодуплексного соединения;
100M
— индикация соединения на скорости 100 Mбит/с (в отличие от соединения
на 10 Мбайт/с);
RX
— мигает при получении платой данных;
TX
— мигает при отправке платой данных;
COLL
— мигает при сетевой коллизии.
Запаиваемая перемычка "INT" может быть замкнута, что позволит плате Arduino
получать уведомления (через прерывания) о событиях от W5100, но в настоящее
время это не поддерживается библиотекой
Ethernet library
. Перемычка соединяет
вывод INT микросхемы W5100 и цифровой вывод 2 платы Arduino.
14.2. Библиотека Ethernet
library
Для работы с Ethernet shield используется стандартная Arduino-библиотека
Ethernet library
. Она поставляется в составе дистрибутива Arduino. Рассмотрим ее
подробнее.
14.2.1. Класс Ethernet (Ethernet class)
Класс Ethernet инициализирует библиотеку и сетевые настройки. Начиная с версии
1.0, библиотека поддерживает DHCP. Использование
Ethernet.begin (mac)
позво-
ляет автоматически получать IP-адрес.
Do'stlaringiz bilan baham: |