| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: WinAPI и системное программирование > обработка ответов rs232 |
| Автор: z006 19.6.2013, 23:54 | ||||
| Добрый день.сел разбираться в работе с rs232,и что-то столкнулся с не понятным мне явлением. если читаю ответ от модема по кол-ву пришедших бит-то ответ "рвется" на части.думал дело в стоп-бите,пробую читать ответ (приш.биты-1) а мне ответ так-же рвет,да ещё и не пойми откуда впихивает кучу левых бит.одним словом не пойму что не так. модем рабочий,проверяют его на Terminal 1.9-там читает ответы нормально.значит где-то у меня косяк,но не пойму где.дальше покажу код инициализации порта,и код чтения ответа:
теперь наглядно покажу что происходит: скрины делались так:запустил прогу-инициализировал порт-позвонил на модем-сбросил звонок на модем-отключил прогу от порта-сделал скрин-закрыл прогу.затем цикл повторялся,т.е. изменений между скринами не вносилось в код никаких вообще. порция скринов №1,читаем со стоп-битом: http://s48.radikal.ru/i120/1306/89/77605d504297.jpg http://s020.radikal.ru/i722/1306/16/61ed6e5d7f11.jpg http://s52.radikal.ru/i137/1306/d1/875b98bea672.jpg порция скринов №2,читаем БЕЗ стоп-бита: http://s61.radikal.ru/i174/1306/86/d110446273ca.jpg http://i060.radikal.ru/1306/e4/06594e6cfbd4.jpg http://s09.radikal.ru/i182/1306/d4/4ab9e69763bb.jpg что за ерунда творится????? |