Arduino:Библиотеки/GSM/Класс GSM SMS/print()
Материал из Онлайн справочника
< Arduino:Библиотеки | GSM | Класс GSM SMS
Перейти к навигацииПерейти к поиску
Содержание | Знакомство с Arduino | Продукты | Основы | Справочник языка Arduino | Примеры | Библиотеки | Хакинг | Изменения | Сравнение языков Arduino и Processing |
Перевод: Максим Кузьмин
Проверка/Оформление/Редактирование: Мякишев Е.А.
Функция print()[1]
Записывает массив символов в SMS-сообщение.
Синтаксис
SMS.print(message)
Параметры
message – сообщение для отправки (массив символов)
Что возвращает
Количество записанных байтов. Тип данных – int.
Пример
#include <GSM.h>
#define PINNUMBER ""
// инициализируем экземпляр библиотеки:
GSM gsmAccess; // чтобы включить режим отладки, в скобочках нужно поставить параметр «true»
GSM_SMS sms;
void setup()
{
// инициализируем последовательную коммуникацию:
Serial.begin(9600);
Serial.println("SMS Messages Sender"); // "Отправщик SMS-сообщений"
// состояние соединения:
boolean notConnected = true;
// запускаем GSM-модуль; если у SIM-карты есть PIN-код,
// вписываем его в скобочки функции begin():
while(notConnected)
{
if(gsmAccess.begin(PINNUMBER)==GSM_READY)
notConnected = false;
else
{
Serial.println("Not connected"); // "Соединение не удалось"
delay(1000);
}
}
Serial.println("GSM initialized"); // "GSM инициализирован"
}
void loop()
{
Serial.print("Enter a mobile number: "); // "Введите телефонный номер: "
char remoteNumber[20]; // телефонный номер, на который нужно отправить SMS
readSerial(remoteNumber);
Serial.println(remoteNumber);
// текст SMS:
Serial.print("Now, enter SMS content: "); // "Теперь введите текст SMS: "
char txtMsg[200];
readSerial(txtMsg);
Serial.println("SENDING"); // "ОТПРАВКА"
Serial.println();
Serial.println("Message:"); // "Сообщение:"
Serial.println(txtMsg);
// отправляем сообщение:
sms.beginSMS(remoteNumber);
sms.print(txtMsg);
sms.endSMS();
Serial.println("\nCOMPLETE!\n"); // "\nГОТОВО!\n"
}
/*
считываем данные, пришедшие через последовательную коммуникацию
*/
int readSerial(char result[])
{
int i = 0;
while(1)
{
while (Serial.available() > 0)
{
char inChar = Serial.read();
if (inChar == '\n')
{
result[i] = '\0';
Serial.flush();
return 0;
}
if(inChar!='\r')
{
result[i] = inChar;
i++;
}
}
}
}
См.также
- beginSMS()
- ready()
- endSMS()
- available()
- remoteNumber()
- read()
- write()
- print()
- peek()
- flush()