Arduino:Библиотеки/GSM/Класс GSMClient/read()
Материал из Онлайн справочника
Содержание | Знакомство с Arduino | Продукты | Основы | Справочник языка Arduino | Примеры | Библиотеки | Хакинг | Изменения | Сравнение языков Arduino и Processing |
Перевод: Максим Кузьмин
Проверка/Оформление/Редактирование: Мякишев Е.А.
Функция read()[1]
Считывает следующий байт, пришедший от сервера, к которому подключен клиент (после последнего вызова read()).
Функция read() наследует у класса Stream.
Синтаксис
client.read()
Параметры
Нет.
Что возвращает
Следующий байт (символ). Если данных, доступных для считывания нет, то возвращает значение «-1». Тип данных – int.
Пример
/*
Веб-клиент
Этот скетч при помощи GSM-модуля подключается к вебсайту. Если
точнее, он загружает URL «http://arduino.cc» и отображает его
через монитор порта.
Цепь:
* GSM-модуль, подключенный к Arduino
* SIM-карта с активным тарифным планом
Создан 8 марта 2012 года Томом Иго (Tom Igoe)
http://arduino.cc/en/Tutorial/GSMExamplesWebClient
*/
// библиотеки:
#include <GSM.h>
// PIN-код:
#define PINNUMBER ""
// Данные об APN:
#define GPRS_APN "GPRS_APN" // замените на свой APN
#define GPRS_LOGIN "login" // замените на свой логин к APN
#define GPRS_PASSWORD "password" // замените на свой пароль к APN
// инициализируем экземпляр библиотеки:
GSMClient client;
GPRS gprs;
GSM gsmAccess;
// URL, путь и порт (к примеру, «arduino.cc»):
char server[] = "arduino.cc";
char path[] = "/";
int port = 80; // порт 80 – это дефолтный порт для HTTP
void setup()
{
// инициализируем последовательную коммуникацию:
Serial.begin(9600);
Serial.println("Starting Arduino web client."); // "Запуск веб-клиента Arduino."
// состояние соединения:
boolean notConnected = true;
// запустив модем функцией GSM.begin(),
// подключаем модуль к GPRS-сети при помощи APN, логина и пароля:
while(notConnected)
{
if((gsmAccess.begin(PINNUMBER)==GSM_READY) &
(gprs.attachGPRS(GPRS_APN, GPRS_LOGIN, GPRS_PASSWORD)==GPRS_READY))
notConnected = false;
else
{
Serial.println("Not connected"); // "Соединение не удалось"
delay(1000);
}
}
Serial.println("connecting..."); // "подключение..."
// если подключение прошло успешно, сообщаем через монитор порта:
if (client.connect(server, port))
{
Serial.println("connected"); // "соединение установлено"
// делаем HTTP-запрос:
client.print("GET ");
client.print(path);
client.println(" HTTP/1.0");
client.println();
}
else
{
// если подключиться к серверу не удалось:
Serial.println("connection failed"); // "Соединение не удалось"
}
}
void loop()
{
// если у сервера есть какие-нибудь байты для считывания,
// считываем их и показываем через монитор порта:
if (client.available())
{
char c = client.read();
Serial.print(c);
}
// если сервер отключился, останавливаем работу клиента:
if (!client.available() && !client.connected())
{
Serial.println();
Serial.println("disconnecting."); // "отключение."
client.stop();
// вечно ничего не делаем:
for(;;)
;
}
}
См.также
- ready()
- connect()
- beginWrite()
- write()
- endWrite()
- connected()
- read()
- available()
- peek()
- flush()
- stop()
Внешние ссылки
Arduino продукты | |
---|---|
Начальный уровень | Arduino Uno • Arduino Leonardo • Arduino 101 • Arduino Robot • Arduino Esplora • Arduino Micro • Arduino Nano • Arduino Mini • Arduino Starter Kit • Arduino Basic Kit • MKR2UNO • TFT-дисплей Arduino |
Продвинутые функции | Arduino Mega 2560 • Arduino Zero • Arduino Due • Arduino Mega ADK • Arduino Pro • Arduino Motor Shield • Arduino USB Host Shield • Arduino Proto Shield • MKR Proto Shield • MKR Proto Large Shield • Arduino ISP • Arduino USB 2 Serial Micro • Arduino Mini USB Serial Adapter |
Интернет вещей | Arduino Yun • Arduino Ethernet • Arduino MKR1000 • Arduino WiFi 101 Shield • Arduino GSM Shield V2 • Arduino WiFi Shield • Arduino Wireless SD Shield • Arduino Wireless Proto Shield • Arduino Ethernet Shield V2 • Arduino Yun Shield • Arduino MKR1000 Bundle |
Носимые устройства | Arduino Gemma • Lilypad Arduino Simple • Lilypad Arduino Main Board • Lilypad Arduino USB • LilyPad Arduino SimpleSnap |
3D-печать | Arduino Materia 101 |
Устаревшие устройства | - |
Примеры Arduino | |
---|---|
Стандартные функции | |
Основы |
|
Цифровой сигнал |
|
Аналоговый сигнал |
|
Связь |
|
Управляющие структуры |
|
Датчики |
|
Дисплей |
Примеры, объясняющие основы управления дисплеем:
|
Строки |
|
USB (для Leonardo, Micro и Due плат) |
В этой секции имеют место примеры, которые демонстрируют использование библиотек, уникальных для плат Leonardo, Micro и Due.
|
Клавиатура |
|
Мышь |
|
Разное |
Категории:
- Страницы, использующие повторяющиеся аргументы в вызовах шаблонов
- Справочник языка Arduino
- Arduino
- Перевод от Сubewriter
- Проверка:myagkij
- Оформление:myagkij
- Редактирование:myagkij
- Страницы, где используется шаблон "Навигационная таблица/Телепорт"
- Страницы с телепортом
- Стандартные библиотеки
- Стандартная библиотека
- Стандартная библиотека Arduino
- Стандартные библиотеки Arduino