Arduino:Примеры/HTTPClient: различия между версиями
Myagkij (обсуждение | вклад) м (Замена текста — «<syntaxhighlight lang="c" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS">» на «<syntaxhighlight lang="c" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS" enclose="div">») |
Нет описания правки |
||
Строка 22: | Строка 22: | ||
Подключаем библиотеки '''Bridge''' и '''HttpClient'''. | Подключаем библиотеки '''Bridge''' и '''HttpClient'''. | ||
<syntaxhighlight lang="c" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS | <syntaxhighlight lang="c" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS"> | ||
#include <Bridge.h> | #include <Bridge.h> | ||
#include <HttpClient.h> | #include <HttpClient.h> | ||
Строка 29: | Строка 29: | ||
В секции setup() инициализируем '''Bridge''' и ждем активации последовательной передачи данных. | В секции setup() инициализируем '''Bridge''' и ждем активации последовательной передачи данных. | ||
<syntaxhighlight lang="c" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS | <syntaxhighlight lang="c" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS"> | ||
void setup() { | void setup() { | ||
pinMode(13, OUTPUT); | pinMode(13, OUTPUT); | ||
Строка 41: | Строка 41: | ||
В секции loop() создаем экземпляр класса '''HttpClient''' и вызываем '''URL''' при помощи функции client.get(url). | В секции loop() создаем экземпляр класса '''HttpClient''' и вызываем '''URL''' при помощи функции client.get(url). | ||
<syntaxhighlight lang="c" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS | <syntaxhighlight lang="c" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS"> | ||
void loop() { | void loop() { | ||
HttpClient client; | HttpClient client; | ||
Строка 49: | Строка 49: | ||
Покуда в клиентском буфере есть какие-нибудь данные, пришедшие от сервера, считываем их и выводим на '''Serial Monitor'''. Повторяем операцию каждые '''5 секунд'''. | Покуда в клиентском буфере есть какие-нибудь данные, пришедшие от сервера, считываем их и выводим на '''Serial Monitor'''. Повторяем операцию каждые '''5 секунд'''. | ||
<syntaxhighlight lang="c" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS | <syntaxhighlight lang="c" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS"> | ||
while (client.available()) { | while (client.available()) { | ||
char c = client.read(); | char c = client.read(); | ||
Строка 62: | Строка 62: | ||
Весь скетч полностью – ниже: | Весь скетч полностью – ниже: | ||
<syntaxhighlight lang="c" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS | <syntaxhighlight lang="c" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS"> | ||
#include <Bridge.h> | #include <Bridge.h> | ||
#include <HttpClient.h> | #include <HttpClient.h> |
Версия от 18:19, 14 мая 2023
Содержание | Знакомство с Arduino | Продукты | Основы | Справочник языка Arduino | Примеры | Библиотеки | Хакинг | Изменения | Сравнение языков Arduino и Processing |
HTTP-клиент[1]
Этот пример для Arduino Yun показывает, как создать базовый HTTP-клиент, который будет подключатся к интернету и загружать некоторый контент. В данном случае вы будете подключаться в сайту Arduino и загружать логотип Arduino, выполненный в ASCII-символах.
Запрограммировав Yun, откройте среду разработки Arduino, а в ней – Serial Monitor.
Необходимое оборудование
- Плата Arduino Yun;
- Беспроводное соединение с интернетом;
Цепь
Для этого примера цепи строить не нужно.
Код
Подключаем библиотеки Bridge и HttpClient.
#include <Bridge.h>
#include <HttpClient.h>
В секции setup() инициализируем Bridge и ждем активации последовательной передачи данных.
void setup() {
pinMode(13, OUTPUT);
digitalWrite(13, LOW);
Bridge.begin();
Serial.begin(9600);
while(!Serial);
}
В секции loop() создаем экземпляр класса HttpClient и вызываем URL при помощи функции client.get(url).
void loop() {
HttpClient client;
client.get("http://arduino.cc/asciilogo.txt");
Покуда в клиентском буфере есть какие-нибудь данные, пришедшие от сервера, считываем их и выводим на Serial Monitor. Повторяем операцию каждые 5 секунд.
while (client.available()) {
char c = client.read();
Serial.print(c);
}
Serial.flush();
delay(5000);
}
Весь скетч полностью – ниже:
#include <Bridge.h>
#include <HttpClient.h>
void setup() {
pinMode(13, OUTPUT);
digitalWrite(13, LOW);
Bridge.begin();
Serial.begin(9600);
while(!Serial);
}
void loop() {
HttpClient client;
client.get("http://arduino.cc/asciilogo.txt");
while (client.available()) {
char c = client.read();
Serial.print(c);
}
Serial.flush();
delay(5000);
}