kick_start Ответов: 2

Ответ на удаленный номер arduino


в настоящее время я занимаюсь проектом, в котором я хочу ответить отправителю, не кодируя какой-либо номер телефона в код, и я не могу понять, как использовать emmiting no. при удержании номера в remoteNumber действительно работает, но при отправке sms обратно требуется номер как "remotenumber", а не как remotenumber

Что я уже пробовал:

  Serial.println("Message received from:");

  // Get remote number
  sms.remoteNumber(remoteNumber, 20);
  Serial.println(remoteNumber);

sms.beginSMS(remoteNumber);
sms.print("this is too hard");
sms.endSMS();
Serial.println("\nCOMPLETE!\n");

Richard MacCutchan

Что?

kick_start

СЭР, Я ХОЧУ ИСПОЛЬЗОВАТЬ СОХРАНЕННЫЙ НОМЕР В CHAR ИЗ ПОЛУЧЕННОГО SMS-СООБЩЕНИЯ. НО Я НЕ ПРЕУСПЕВАЮ В ЭТОМ ПОТОМУ ЧТО ЕМУ НУЖНО ЧИСЛО В ДВОЙНЫХ ПЕРЕВЕРНУТЫХ ЗАПЯТЫХ НО КАК ЭТО СДЕЛАТЬ
??????????????????????

phil.o

Не надо на нас кричать.

2 Ответов

Рейтинг:
1

Stefan_Lang

Если я правильно вас понял, вы хотите воспроизвести строку (удаленный номер) в новой строке и заключить ее в двойные кавычки (то, что вы назвали перевернутой двойной запятой). Вы можете сделать это вот так:

#include <iostream>
#include <strstream>
int main()
{
    auto remotenumber = "0123456";
    std::strstream message;
    message << "The number is \"" << remotenumber << "\"." << std::endl;
    cout << message.str();

    return 0;
}

Выход есть:
The number is "0123456".

Ведущая буква " \ " называется escape-символом. Вы можете использовать его для многих специальных вещей. В этом случае, чтобы предотвратить интерпретацию компилятором двойной кавычки как "конец строки". Полный список escape-последовательностей можно найти здесь: Escape-последовательности в C - Википедии[^]


CPallini

5.

Stefan_Lang

Спасибо.

kick_start

#включить <gsm.h>
#определить номер вывода, который ""
GSM gsmAccess; // включить параметр 'true' для включенной отладки
GSM_SMS смс;

char remoteNumber[20]; // содержит номер излучающего устройства

недействительными установки()
{
Серийный.методы begin(9600);
Serial.println("приемник SMS-сообщений");
boolean notConnected = true;
в то время как(не подключен)
{
если(gsmAccess.начать(номер вывода, который)==GSM_READY)
notConnected = false;
еще
{
Serial.println("не подключен");
задержка(1000);
}
}
Serial.println("GSM инициализирован");
Serial.println("ожидание сообщений");
}

пустая петля()
{
чар с;

// Если есть какие-либо доступные SMS-сообщения()
если (sms.доступно())
{
Serial.println("сообщение получено от:");

// Получить удаленный номер
sms.remoteNumber(remoteNumber, 20);

Серийный.код println(remoteNumber);

sms.beginSMS(remoteNumber);
sms.print("все работает хорошо");
sms.endSMS();

Serial.println("\nCOMPLETE!\n");
Серийный.код println("\усилиям nend смогла сообщение");
смс.флеш();
Serial.println("сообщение удалено");
}
}

kick_start

не работает для меня не могли бы вы пожалуйста перекрестно проверить нет процессов после показа сообщения полученного от

Stefan_Lang

"не работает" - это недостаточная информация. Кроме того, я не вижу, что вы даже использовали мое предложение, чтобы решить вашу проблему. Почему вы думаете, что это вдруг "работает" сейчас?

kick_start

сэр, я совершенно новичок, поэтому не получил вашего предложения. мне очень жаль, но не могли бы вы сказать мне, как это осуществить? а в вышеприведенной программе, если я поставлю сам номер телефона в двойную кавычку, пока он не сработает..

Stefan_Lang

Извините, но вы не сказали раньше или иным образом не указали, что вы новичок.

Я *сказал* вам, как его реализовать, но если вы не понимаете, как использовать его в своей программе, то эта программа выше вашей головы. Я мог бы буквально напечатать программу для вас, но зачем мне тратить на это время и какова будет цель? Он не делает ничего осмысленного, и вы не можете научиться программировать, если другие пишут программу для вас.

Когда я учился программированию, интернета еще не существовало. Я ходил в библиотеку или покупал настоящие книги, чтобы учиться. Для вас это гораздо проще: множество учебных пособий и замечательных статей для начинающих находятся прямо там, в интернете, всего в одном поиске. Я не собираюсь тратить часы, обучая вас шаг за шагом, когда есть так много материала, доступного бесплатно.

Рейтинг:
0

Mike Hankey

Это то, что тебе нужно? Arduino - GSMExamplesSendSMS[^]


kick_start

НЕТ, СЭР, Я ЗНАЮ, КАК ОТПРАВЛЯТЬ SMS. НО В МОЕМ КОДЕ Я ИСПОЛЬЗУЮ CHAR ДЛЯ ХРАНЕНИЯ УДАЛЕННОГО НОМЕРА, ИЗЛУЧАЕМОГО GSM, НО Я НЕ МОГУ НАПРЯМУЮ ИСПОЛЬЗОВАТЬ ЕГО. ЕГО НУЖНО ПОСТАВИТЬ В ДВОЙНЫХ ПЕРЕВЕРНУТЫХ ЗАПЯТЫХ. И Я НЕ ЗНАЮ, КАК ЭТО СДЕЛАТЬ.

phil.o

Пожалуйста, не кричи.