Написал прогу для работы с устройством через com порт. (Язык: common lisp, реализация: sbcl 1.0.57). Устройство работает в режиме 9600 8N1, и шлет поток из 5 цифр, закодированных в ASCII и #\Return, потом снова 5 цифр итд.
Прога должна ловить цифры между #\Return, склеивать их в числа и обрабатывать. Т.е. входной поток такой:
(#\0 #\1 #\5 #\5 #\6 #\Return #\0 #\5 #\6 #\3 #\2 #\Return) итд, прога дает integer'ы 1556, 5632, ...
Вот прога, я открываю устройство (setq stream (open-theremin)) и обрабатываю числа (calc-statistics stream)
Проблема в том, что последняя функция делает только 17 отсчетов и ждет чего-то, хотя данные на порт поступают без сбоев (это я с помощью терминала убедился).