Arduino:Библиотеки/GSM/Класс GPRS/attachGPRS(): различия между версиями
Myagkij (обсуждение | вклад) Нет описания правки |
Нет описания правки |
||
(не показана 1 промежуточная версия этого же участника) | |||
Строка 141: | Строка 141: | ||
<references /> | <references /> | ||
{{Навигационная таблица/Портал/Arduino}} | |||
[[Категория:Стандартные библиотеки]] | [[Категория:Стандартные библиотеки]] |
Текущая версия от 12:22, 8 июля 2023
Содержание | Знакомство с Arduino | Продукты | Основы | Справочник языка Arduino | Примеры | Библиотеки | Хакинг | Изменения | Сравнение языков Arduino и Processing |
Функция attachGPRS()[1]
Подключается к указанному APN (от «access point name», что означает «имя точки доступа»), чтобы инициализировать GPRS-коммуникацию.
У каждого оператора связи есть APN, которая служит мостом между сетью этого оператора и интернетом. Иногда к этой точке привязаны логин и пароль. К примеру, APN для оператора Bluevia – это «bluevia.movistar.es», но логина и пароля у нее нет.
По этой ссылке находится список APN для разных операторов связи. Учтите, впрочем, что этот список может быть устаревшим. В таком случае лучше уточнить информацию об APN у вашего оператора связи.
Синтаксис
gprs.attachGPRS(APN, user, password)
Параметры
APN – APN, предоставленный оператором связи (массив символов)
user – логин для APN (массив символов)
password – пароль для доступа к APN (массив символов)
Что возвращает
Одно из следующих значений – ERROR, IDLE, CONNECTING, GSM_READY, GPRS_READY, TRANSPARENT_CONNECTED (массив символов).
Пример
#include <GSM.h>
// PIN-код:
#define PINNUMBER ""
// Данные об APN:
#define GPRS_APN "GPRS_APN" // замените на свой APN
#define GPRS_LOGIN "login" // замените на свой логин к APN
#define GPRS_PASSWORD "password" // замените на свой пароль к APN
// инициализируем экземпляр библиотеки:
GPRS gprs;
GSM gsmAccess; // чтобы включить режим отладки, в скобочках нужно поставить параметр «true»
GSMServer server(80); // порт 80 (по умолчанию для HTTP)
// таймаут:
const unsigned long __TIMEOUT__ = 10*1000;
void setup()
{
// инициализируем последовательную коммуникацию:
Serial.begin(9600);
// состояние соединения:
boolean notConnected = true;
// запускаем GSM-модуль; если у SIM-карты есть PIN-код,
// вписываем его в скобочки функции begin():
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("Connected to GPRS network"); // "Подключение к GPRS-сети прошло успешно"
// запускаем сервер:
server.begin();
// получаем IP-адрес:
IPAddress LocalIP = gprs.getIPAddress();
Serial.println("Server IP address="); // "IP-адрес сервера="
Serial.println(LocalIP);
}
void loop() {
// слушаем входящих клиентов:
GSM3MobileClientService client = server.available();
if (client)
{
while (client.connected())
{
if (client.available())
{
Serial.println("Receiving request!"); // "Запрос получен!"
bool sendResponse = false;
while(char c=client.read()) {
if (c == '\n') sendResponse = true;
}
// если дошли до конца строки (получили символ новой строки)...
if (sendResponse)
{
// ...отправляем стандартный заголовок HTTP-ответа:
client.println("HTTP/1.1 200 OK");
client.println("Content-Type: text/html");
client.println();
client.println("<html>");
// отображаем значения всех входных аналоговых контактов:
for (int analogChannel = 0; analogChannel < 6; analogChannel++) {
client.print("analog input "); // "значение на входном аналоговом контакте "
client.print(analogChannel);
client.print(" is "); // " составляет "
client.print(analogRead(analogChannel));
client.println("<br />");
}
client.println("</html>");
// необходимая задержка:
delay(1000);
client.stop();
}
}
}
}
}
См.также
- GPRS Constructor
Внешние ссылки
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