Пример 36. Ethernet шилд W5100
Примеры
ПРИМЕРЫ
- Пример 1. Светодиоды
- Пример 2. Подключение кнопки
- Пример 3. Переключатель
- Пример 4. Активный зуммер
- Пример 5. Пассивный зуммер
- Пример 6. Фоторезистор
- Пример 7. RGB-светодиод
- Пример 8. Семисегментный индикатор и 74HC595N
- Пример 9. Четырехразрядный 7-сегментный индикатор
- Пример 10. Светодиодная матрица
- Пример 11. Светодиодная шкала
- Пример 12. ЖК-дисплей
- Пример 13. Джойстик
- Пример 14. Вольтметр
- Пример 15. Термистор
- Пример 16. Модуль DHT11
- Пример 17. Модуль HC-SR04
- Пример 18. Датчик движения HC-SR501
- Пример 19. Матричная клавиатура
- Пример 20. ИК датчик и пульт
- Пример 21. Модуль часов DS-1302
- Пример 22. RFID-модуль RC522
- Пример 23. Сервопривод
- Пример 24. Модуль реле
- Пример 25. Двигатель постоянного тока
- Пример 26. Шаговый двигатель и драйвер ULN2003
- Пример 27. Драйвер двигателей на L298N
- Пример 28. MP3-плеер DFPlayer Mini
- Пример 29. Датчик уровня воды
- Пример 30. Serial Port
- Пример 31. Симуляция парковки
- Пример 32. Датчик температуры DS18B20
- Пример 33. Bluetooth-модуль HC-06
- Пример 34. Плата расширения с дисплеем и кнопками
- Пример 35. Плата расширения для двигателей на L293D
- Пример 36. Ethernet шилд W5100
- Пример 37. GSM/GPRS шилд SIM900
- Пример 38. GPS модуль Ublox NEO-6M
- Пример 39. Модуль считывания отпечатков пальцев
- Пример 40. Шаговый двигатель NEMA17 и драйвер TB6600
На шилд выведены закрытые им кнопка RESET и служебные светодиоды, в том числе индикаторы работы проводного интерфейса. Шилд совместим с Arduino Mega, так как использует ICSP-разъём (разъём программирования) для подключения. Обратите внимание – стандартный пин 10, используемый для выбора активного устройства, будет занят и для других устройств придётся выбирать другой пин, чтобы избежать конфликта на линиях данных.
Шилд был разработан одним из первых и стал стандартом, поэтому библиотека для работы с ним включена в комплект поставки Arduino IDE и называется она просто – Ethernet library. Для подключения шилда к Arduino просто наденьте его на плату.
Описание:
В данном примере вставьте плату расширения в Arduino, затем откройте среду и загрузите пример WebServer (Файл > Примеры > Ethernet). После чего подключите Arduino к сети и перейдите по IP-адресу 192.168.1.177.
Компоненты:
- 1 × Плата Arduino Uno R3
- 1 × USB-кабель
- 1 × Ethernet шилд W5100
Скетч:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 |
#include "SPI.h" #include "Ethernet.h" // вводим MAC-адрес нижк // У более новых шилдов MAC-адрес напечатан на наклейке byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED }; // Если не хотите использовать DNS (и тем самым сократить размер скетча), // то вместо названия сайта воспользуйтесь цифровым IP: //IPAddress server(74,125,232,128); // цифровой IP для Google (без DNS) char server[] = "www.google.com"; // название сервера Google (с DNS) // Задаем статический IP-адрес (на тот случай, если у DHCP выдать IP-адрес не получится): IPAddress ip(192, 168, 1, 177); // Создаем клиента, который будет подключаться // к необходимым для нас IP-адресу и порту // (портом по умолчанию для HTTP является 80): EthernetClient client; void setup() { // Инициализируем последовательную передачу данных и ждем открытия порта: Serial.begin(9600); while (!Serial) { ; // // ждем подключения последовательного порта (нужно только для Leonardo-подобных) } // Запускаем Ethernet-соединение: if (Ethernet.begin(mac) == 0) { Serial.println("Failed to configure Ethernet using DHCP"); // Продолжать дальше смысла нет, поэтому вместо DHCP // попытаемся сделать это при помощи IP-адреса: Ethernet.begin(mac, ip); } // Даем Ethernet Shield секунду на инициализацию: delay(1000); Serial.println("connecting..."); // Если подключение установлено, сообщаем об этом на Serial Monitor: if (client.connect(server, 80)) { Serial.println("connected"); // "Подключение установлено" // Делаем HTTP-Запрос: client.println("GET /search?q=arduino HTTP/1.1"); client.println("Host: www.google.com"); client.println("Connection: close"); client.println(); } else { // Если соединения с сервером нет, пишем об этом на Serial Monitor: Serial.println("connection failed"); // "Подключиться не удалось" } } void loop() { // Если от сервера есть какие-нибудь байты, // считываем их и выводим на Serial Monitor: if (client.available()) { char c = client.read(); Serial.print(c); } // Если сервер отключился, останавливаем работу клиента: if (!client.connected()) { Serial.println(); Serial.println("disconnecting."); // "Отключение..." client.stop(); // Больше ничего не делаем: while (true); } } |