По не понятной мне причине не меняются параметры СОМ порта - чётность, количество стоповых битов. Все изменения проверяю stty -F /dev/ttyS1 -a
Аппаратно СОМ1 и СОМ2 соединены. После загрузки Линукса делаю:
stty -F /dev/ttyS0 raw -echo
stty -F /dev/ttyS0 raw -echo
В первой кончоли cat /dev/ttyS0
во второй консоли ls / >> /dev/ttyS1
Всё прекрасно - есть передача данных.
делаю stty -F /dev/ttyS1 parenb , повторяю ls опять есть передача данных. Это нормально?
Делаю stty -F /dev/ttyS1 parodd , делаю ls, опять есть передача данных. Это правильно?
И после этого есть передача данных: stty -F /dev/ttyS1 -parodd -parenb
Можно менять -cstopb на cstopb у /dev/ttyS1 , но всё равно будет передача данных.
Если тоже самое делать в винде на другом компе из гипер терминала, то параметры СОМ порта будут вступать в силу только после перезапуска гипертерминала.
Как в Линухе заставить СОМ порты менять чётность и нечётность?
Я не имею ввиду демонстративные изменения, которые можно проверить stty -F /dev/ttyS1 это не интересно. Мне Надо увидеть что между СОМ портами с различными чётностями и стоповыми битами действительно нет нормального обмена данными.
А с чего ты взял, что между сом-портами с разными четностью и стоп-битами
невозможен нормальный обмен? Количество стоп-битов при приеме в порт
вообще рояли не играет. Четность таки да, микросхема на приеме проверяет
и выставит битик "ошибка четности" и то, если сом-порт настроен на проверку четности,
но не факт, что драйвер этот битик обрабатывает. А прерывание при приеме
байта с ошибкой четности все равно будет в лучшем виде и байт примется.