CODE
FlMainUartDataFormat uartSettings;
uartSettings.uartFormat = FL_MAIN_UART_8P1_FORMAT;
uartSettings.uartParity = FL_MAIN_UART_EVEN;
ebdat9_11ChangeMainUartDataFormat(uartSettings); // Возвращает ОК
В итоге -- отправляет SIM900 все как надо, все биты четности верны.
Если же посылаю от ПК модулю -- SIM900 принимает абсолютно все, правильно, игнорируя заведомо неверно выставленные биты четности.
Это все я проверил осциллографом.
Прошивка 1137B02SIM900M64_ST_DTMF_JD_EAT
--------------------------------------------------------------
Немного предыстории вопроса, зачем этот несчастный бит нужен. Может, кто подскажет решение, проще дополнительного внешнего МК.
Есть RS-485 сеть, в которой ходят посылки. Их адресный байт помечается единичкой в 8 бите, соответственно, нужно узнавать значение этого бита. Если бы бит четности при приеме работал правильно, я бы мог узнавать значение 8 бита по факту прохождения байта в мою EAT программу.
Видно, единственный вариант -- софтверный UART.