boida | Дата: Воскресенье, 26.05.2019, 16:28 | Сообщение # 651 |
Группа: Проверенные
Сообщений: 1
Статус: Offline
| Всем привет, хочу адаптировать устройство под свои нужды но для этого необходимо разобраться с работой программы. Так как в Bascom'e начинающий прощу с этим помощи. И так: Отправляю на номер модуля смс с текстом GOD_AP, если пришло сообщение с таким текстом то модуль должен считать номер телефона с которого пришло это смс и сохранить этот номер как номер администратора, этому номеру доступны расширенные функции. Программа настраивает работу с модулем и удаляет все входящие сообщения: КодPrint "AT+IPR=19200" 'включаем текстовый формат сообщений Waitms 500'Print "AT+GSMBUSY=1" 'запрет входящих звонков'Waitms 500 Print "AT+CSCS=" ; Chr(34) ; "GSM" ; Chr(34) 'кодировка сообщенийWaitms 500 Print "ATE0 " 'ответ без эхоWaitms 200 Print "ATV1 " 'ответ без эхоWaitms 500Print "AT+CSCB=0" 'включаем текстовый формат сообщенийWaitms 500Print "AT+CMEE=0"Waitms 500Print "AT+CMGF=1" 'включаем текстовый формат сообщенийWaitms 500Print "AT+CLIP=1" 'определение номера входящего вызоваWaitms 500 Led2 = 1Flushbuf Wait 2Print "AT+CMGDA=" ; Chr(34) ; "DEL ALL" ; Chr(34) 'удаление всех смс тут все проходит нормально. В терминале вижу повторяющееся сообщение: AT+CMGR=1
OK
AT+CMGR=1
OK
AT+CMGR=1
OK
модуль пытается прочитать сообщение если "прошляпил"
далее отправляю сообщение в модуль с текстом GOD_AP
в терминале появляется сообщение : +CMTI: "SM",1
AT+CMGR=1
+CMGR: "REC UNREAD","+7ХХХХХХХХХХ","","19/05/26,14:50:02+12"
GOD_AP
OK
AT+CMGR=1
+CMGR: "REC READ","+7ХХХХХХХХХХ","","19/05/26,14:50:02+12"
GOD_AP
OK
AT+CMGR=1
+CMGR: "REC READ","+7ХХХХХХХХХХ","","19/05/26,14:50:02+12"
GOD_AP
Я так понимаю что подпрограмма Readfirstsms не может считать первые 4 символа в первой строке, иначе она б удалила это сообщение. Readfirstsms:
еще моменты непонятные для меня: Процедура Getline Sk как я понимаю считывает одну строчку, значит если мне нужна вторая то я должен обратится к процедуре дважды?
Процедура выглядит так: Код Sub Getline(s As String)
Переменная в ней S Aы string * 50, а обращаемся за переменной Sk As string * 66 , так и должно быть?
|
|
| |