Цитата(N1X @ Apr 8 2011, 18:38)

Но как прикрутить грамотную работу с приемом данных разобраться не могу.
Альтернатива одному обработчику - два обработчика!

Вообще-то эти вещи протоколо-зависимые.
Обычно автомат состояний управляет процессом. Типа так
http://caxapa.ru/193312.htmlНу а лихие обработчики прерываний складывают принятое в линейные или циклические буферы.
Добавлю, что типичный программистский прием - это выполнение функции, в которую передается указатель на структуру, в которой находится вся интересующая информация - что принято, что не принято, кто у принятого байта папа-мама и прочее. Затем структура разбирается на атомы или анализируется что-то нужное.
Или функция возвращает, что все байты приняты, а что принято, ищется в другом месте.
Да в конце концов вспомните, как это сделано в Windows!
Да и книжки бывают полезны, на форумах не учат, а калечат!
Уходя, оставьте свет...