Немного предыстории:
Я пишу код Arduino между Uno и модулем GSM для хобби-проекта. Идея в том, что модуль GSM будет вызывать или отправлять SMS при срабатывании. Я нахожусь на продвинутой стадии, и мой проект выполняет большую часть того, что я хочу, и я пытаюсь добиться того, чтобы при отправке SMS на модуль GSM (плата разработки TC35) он получал сообщение, и если он содержит термин «Set», тогда он установит номер набора номера на этот новый номер.
Между Arduino и GSM-модулем имеется программное последовательное соединение, которое считывает с выхода GSM и отображает его на последовательном мониторе:
if(gsmSerial.available()>0){
gsm_char_send = gsmSerial.read();
Serial.print(gsm_char_send);
Модуль GSM управляется AT-командами, которые сообщают ему о звонке, SMS и т. Д.
Например, команда AT:
gsmSerial.println("AT+CMGR=1"); // Read SMS at position 1.
Возвращает:
+CMGR: "REC READ","+353xxxxxxxxx",,"13/03/20,19:3þ49715",,"13/03/20,19:35:02+00"set number
Я попытался перехватить весь gsmSerial.read () в ограниченном массиве [50] и преобразовать его в String, чтобы затем выполнить strstr для проверки на «set number», но через gsmSerial слишком много других не относящихся к делу символов.
Я относительно начинающий программист, поэтому я не сомневаюсь, что есть что-то простое, что я упускаю или могу реализовать, и буду признателен за любые указания.
Задача ещё не решена.
Других решений пока нет …