Есть устройство на COM порту.
Принимает команды заканчивающиеся \n и выдается ответ например OK\n
Если кмонада неверная, то девайс отправляет C01\n
Делаю
f=open("/dev/ttyS0","флаги");
цикл{
scanf("%s",buf);
write(f,buf,len);
read(f,buf,90);//90 - это с запасом
}
close(f);
Код несколько условный.
Параллельно запускаю в консоле cat /dev/ttyS0
До первой отправки команды в консоле тишина. После отправки первой команды в консоле появляется примерно следующее
OK
C01
C01
и т д до тех пор, пока не срубишь
Если отправить ещё одну команду, то в консоле проскочит OK\n и снова начинаются C01
Вывод: линуха продолжает отсылать прибору хер знает что, в то время, как у меня висит scanf
Более того. После close(f) мусор не пропадает. Он пропадает только когда прога выгружается.
Вопрос только один: Что делать?
Ответ на:
комментарий
от mky
Ответ на:
комментарий
от anonymous
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
Похожие темы
- Форум Чтение запись COM порта (2018)
- Форум Com-порт+Com-порт=сеть??? (2004)
- Форум COM порт (2010)
- Форум COM порт (2014)
- Форум COM порт (2008)