[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

OFFTOPIC: игнорирование паритета на прием



Я конечно извиняюсь, что спрашиваю это здесь, но возможно кто-нибудь
знает ответ и смог бы мне помочь.

Проблема такая - есть девайс, который по RS-232 связан с компом. Для
передачи используется 9 битная посылка (один из них паритет). Фича
девайса в том, что можно на единичный паритет повесить на нем
прерывание (для распознования адреса). Встает вопрос, как на компе под
linux (желательно используя только posix) генерить всегда единицу в бите
паритета. Есть способ вручную считать битики и менять PARODD в c_cflags,
но в описаловы микросхемы (UART) четко сказано, что можно это железно
сделать в 3 бите не помню сейчас какого регистра.

И еще, наиболее важный вопрос. При приеме девайс ставит паритет в 0 (с
той же целью индикации не адреса, а данных). Соответственно комп не
ловит байты с некорректным паритетом. Пробовал все 8 комбинаций с INPCK
IGNPAR PARMRK - в результате шли только корректные байты или чушь.

Очень буду благодарен за ответ.



Reply to: