[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 14 из 14
  • «
  • 1
  • 2
  • 12
  • 13
  • 14
Плата модуля SIM900D и AVR
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: 

Код
Readfirstsms:


еще моменты непонятные для меня:
Процедура Getline Sk как я понимаю считывает одну строчку, значит если мне нужна вторая то я должен обратится к процедуре дважды?

Процедура выглядит так:

Код
Sub Getline(s As String)


Переменная в ней S Aы string * 50, а обращаемся за переменной Sk As string * 66 , так и должно быть?


 
  • Страница 14 из 14
  • «
  • 1
  • 2
  • 12
  • 13
  • 14
Поиск: