Доброго времени суток, форумчане!
Есть чип от silabs cp2102. (К нему есть силабовский драйверы, которыми я не пользуюсь, потому что при некоторых обстоятельствах они вешают мне систему...)
Есть открытые драйверы в ядра линукса. cp210x.ko называеться модуль. Находиться в kernel-source/drivers/usb/serial/cp210x.c.
"Устройство" мое - это просто один cp2102 чип на плате и usb шнурочек. На чипе Rx и Tx запаяны между собой.
Тобишь, я в чип/порт/ttyUSB0 записываю что-то и это-же получаю (по идее).
Кто-то пользуеться этим драйвером, очень хочеться услышать как он работает у Вас, работает ли правильно.
Дело в том, что когда я записываю первый раз в порт - я получаю это же значение обратно. Для всех последующих попыток поведение не определено.
Возможные случаи - это вываливаеться полностью буфер, тоесть, я туда буквы "х", а мне обратно содржимое буфера чипа с буквой "х" на конце.
Или же он просто выдает перевод строки...
Функции чтения и записи в чип модуль использует стандартные (из файла generic.c) - это usbserial модуль.
я сделал modprobe usbserial debug=1 и понял, что после того, как я туда записываю символ "а", я его получаю обратно, но ведь потом
я (драйвер) пишет туда '\r' и получает... и так бесконечно, пока есть хоть один процесс, который читает из ttyUSB0.
Вопросы:
Это он только у меня так работает, или еще у когото???
Я понимаю (или думаю, что понимаю) что это где-то глюк в ядра... ведь у меня один чип с закорочеными Рх и Тх...
Может быть, надо чип сначала как-то настроить программой конфигурации последовательных портов, такой как minicom например???
Большое спасибо за время и внимение!