Цитата(Ruslan-maniak @ Aug 2 2013, 13:38)

Здравствуйте. У меня проблема следующего характера: Я могу совершать звонки, принимать их и отправлять СМС в PDU формате. Однако приём СМС во включенном PDU режиме происходит странно. Если СМС на модем отправленно в 16-битном юникоде (то есть с использованием кирилицы) то с модема я получаю данные как положено по 4 символа на букву. Что соответствует 16-битному юникоду. И всё прекрасно декодируется в ASCII. Но если на модем приходит СМС в обычном тектовом формате (то есть латински буквы, цифры и разные знаки), то с модема я получаю следующий код этого СМС. Все служебные данные (номер отправителя, время, кол-во символов) приходят как надо. А вот сами символы в виде ASCII кода не приходят. То есть нормально приходит только первый символ, а за ним приходит мусор нужного размера. Например код входящего сообщения ("1234") запрошенного с модема АТ командой:
07919732520180F1040B91************00003180206170048204 31D98C06.
Отделённые пробелом данные и есть текст. Как видим первый символ соответствует истине (0x31 = '1'), а дальше три символа с мусором. Кто с этим сталкивался? В чём может быть косяк?
Если выключить режим PDU, то смс в любой кодировке принимается как надо. Так что вынужден сейчас сначала читать смс в режиме PDU (так как только так мы можем узнать кодировку пришедшего СМС), выключать этот режим, и снова читать пришедшее сообщение. Но это какой-то изврат и хочется разобраться в чём дело.
Вот, навскидку проверил, все корректно:
Цитата
at+gmm
GL868-DUAL
OK
at+cgmr
10.00.184
OK
at+cmgf=1
OK
at+cscs="UCS2"
OK
at+cmgl="ALL"
+CMGL: 1,"REC UNREAD","002B00370039003100310039003500390039003500300039","","13/08/02,18:00:20+32"
00310032003300340430
at+cmgf=0
OK
at+cmgl=1
+CMGL: 1,1,"",29
07919720990000F3040B919711599905F90008318020810002230A00310032003300340430
OK
at+cmgr=2
+CMGR: 0,"",27
07919720990000F3040B919711599905F9000831802081315423080031003200330034
OK
Пришлите полный лог, включая версию прошивки.