|
Я говорю о том, что всю выдачу в UART надо свести к одной функции:
int uart_tx_frame (void* buf, int len);
котороя передает фрейм, в котором len байт данных и добавляет проверочные байты (здесь я не совсем корректно выразился, когда я писал "контрольную сумму", я имел ввиду какие-либо проверочные байты, CRC-8, CRC-16, CRC-32, суммирование байт по модулю 2, ... - это как угодно, и является отдельным вопросом).
А далее без разницы, что передавать: хоть char-ы, хоть long-и, хоть float-ы, хоть структуры, хоть union-ы ... (естественно, надо помнить, что есть такая штука, как выравнивание, разный порядок байт на разных платформах).
E-mail: info@telesys.ru