|
SIM900B -- проблемы |
|
|
|
Feb 11 2011, 12:05
|
Местный
  
Группа: Участник
Сообщений: 212
Регистрация: 2-02-11
Пользователь №: 62 643

|
Первая: CODE ATQ0V1E1&D1&C1S0=0;+CRSL=1;+CMEE=1;+CIURC=0;+CSCLK=0;+IPR=9600 OK AT+CCLK? +CFUN: 1
+CPIN: READY
И ни OK, ни ERROR, ничего больше. Попадание то ли +CPIN: READY, то ли +CFUN: 1 в момент выполнения команды теряет ответ на неё. Аналогичная проблема есть с отправкой SMS: после AT+CMGS=<размер>\r некоторое время не воспринимает (приблизительно ~100 мс), верней теряет, передаваемые данные. Такое впечатление, что контроль потока отсутствует (RTS/CTS), но внутри модуля активно используется. В SIM300 проблем не было. Таких (были другие, "Call Ready" тоже доставлял тем же самым). Как жить дальше?
|
|
|
|
|
 |
Ответов
(1 - 6)
|
Feb 11 2011, 13:02
|
Местный
  
Группа: Участник
Сообщений: 212
Регистрация: 2-02-11
Пользователь №: 62 643

|
Цитата(CADiLO @ Feb 11 2011, 15:31)  >>>>Аналогичная проблема есть с отправкой SMS: после AT+CMGS=<размер>\r некоторое время не воспринимает (приблизительно ~100 мс), верней теряет, передаваемые данные.
Простите, а приглашение к вводу текста (символ > ) кто будет ждать ???? А где написано, что его нужно ждать? 3GPP TS 27.005 version 7.0.0 Release 7, раздел 4.3: Execution command sends message... - the TA shall send a four character sequence <CR><LF><greater_than><space> (IRA 13, 10, 62, 32) after command line is terminated with <CR>; after that PDU can be given from TE to ME/TA.
- the DCD signal shall be in ON state while PDU is given.
Неоднозначно. Тут сказано, что после DCD или '>' можно выдавать PDU. Но не сказано же, что его нельзя выдавать раньше... Цитата До его появления естественно потеряется текст. Совершенно неестесственно, когда из потока данных передаваемых в последовательном коде пропадают произвольные части данных. Вдогонку. Добавление +CFUN=0 в строку инициализации (длинная первая сверху) и позже +CFUN=1, перед вводом PIN-кода, решает проблему с +CFUN: 1 и пропаданием OK. Но в скольки местах ещё пропадает "OK" или "ERROR"?
|
|
|
|
|
Feb 11 2011, 13:21
|

Гуру
     
Группа: Свой
Сообщений: 6 023
Регистрация: 26-08-05
Из: Днепр
Пользователь №: 7 988

|
Так пропадают данные в начале передачи или "когда из потока данных передаваемых в последовательном коде пропадают произвольные части данных" ?
>>>А где написано, что его нужно ждать?
сами же и написали
- the TA shall send a four character sequence <CR><LF><greater_than><space> (IRA 13, 10, 62, 32) after command line is terminated with <CR>;
>>>Но не сказано же, что его нельзя выдавать раньше...
А если Вам не сказать что в кипятке можно обжечься, тоже будете туда прыгать или подумаете что этого делать не стоит ?
Ну и в конце описания команды есть строчки: Implementation - Optional.
Это значит что команда опциональна и производитель может изменить ее синтаксис или работу. Хотя в данном случае она работает полностью как описано в 07.05
--------------------
Не можна втрачати надію. Не можна здаватися до останньої миті. Можливо саме вона, остання мить, принесе весну, яка стане початком нового життя.
|
|
|
|
|
Feb 14 2011, 21:36
|
Ортодокс
  
Группа: Свой
Сообщений: 219
Регистрация: 26-10-07
Из: Смела, Украина
Пользователь №: 31 775

|
Цитата(Alechek @ Feb 14 2011, 09:09)  А не могли бы вы указать то место, где написано, что у "Optional" команд производитель может изменять синтаксис? Всегда думал что при таком объявлении - команда либо есть, ровно как стандарте, либо ее нет. Да нет такого места и быть не может. Зачем тогда вообще в стандарте специфицировать команды, если предполагать, что каждый производитель будет реализовывать, как ему захочется?
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|