обнаружился неприятный глюк у сабжа. Тест простейший: Программа включает модем, проводит начальную инициализацию,вводит ПИН. и мониторит регистрацию (раз в 2 сек) с помощью AT+CREG? Далее, звоним на модем и после соединения сбрасываем звонок. (на модеме стоит автоподнятие, я на него звоню. Когда он берет трубу я кладу трубку)
После этого модем ни в какую не реагирует на AT+CREG. Эхо есть, ответа нет. Можно сколько угодно долбиться в него, ответа не будет до момента его пересброса. т.е. картина такая: AT+CREG? AT+CREG? AT+CREG? и т.д. в ответ висяк полный (на другие команды без проблем)
Далее, выяснилась закономерность. Предыдущую операцию делала моя программа. т.е. после выполнения i- команды тут же вводилась следующая т.е. непрерывный процесс. Теперь, если между вводами i и j командой делать паузу примерно на 500ms то данный глкю вроде как не замечается (Если сидеть в терминалке и вручную все набивать то он тоже не обнаруживается.) Граница этой паузы болтается гдето между 200 и 300ms. Но с данными паузами весть "сценарий" команд выполняется уж как то совсем долго да и нет гарантий что дело в этом.
Короче, вещь крайне не приятная. даже не знаю как обойти. У кого было что-то подобное?
Сообщение отредактировал Romario - Oct 16 2006, 08:42
|