Привожу свой принцип обмена с модемом, (реализовано на асм авр, система авр+жки+GSM/GPRS(wavcom))
1. посылаю команду модему 2. делаю паузу (зависит от времени выполнения команды к перимеру 0.5сек) 3. смотрую что в буфере, есть три варианта - ответил нето что ожидал (например самоответ модема(выдал WIND) - очистил буфер, пошел на повтор команды) - нечего неответил (например повис модем !!! (очень редко но бывает, делаем хар рестарт модема и повтор команд например с самого начала(необязательно)!)) - ответил то что ждал (идем дальше все ок !)-тут еще можно ветвить на тему того что ждали бывают необходимо обрабатывать несколько возможных ответов например входа в сеть +CGREG 0,0 0,1 0,2...
система примимает и передает sms-ки и использует встроенный TCP стек модема, (когда только начинал хотел сделать обработку дерева, передумал да и незачем и так все прекрасно пашет)
|