Цитата
А что вас так волнуют эти биты? Вас ведь
время паузы интересует, а не просто биты. Ну и считайте его в размерности времени - в миллисекундах там всяких

Конечно паузу будем считать в микросекундах, просто в битах проще понять принцип, без относительно скорости передачи.
Цитата
Символ это один информационный символ в асинхронном канале - 7 или 8 бит данных, обрамленные старт-битом, битом четности и стоп-битами.
Как я понял из спецификации ModBus over Serial line (стр.12, п2.5.1),
символ - это 4-х битное шестнадцетеричное число от 0 до 15 (0..F).
А в 8 битах данных, т.е. одном байте содержится два символа.
Цитата
t(3.5)=3500*(START+DATA+PARITY+STOP)/BAUD, где START - старт-бит (одна штука), DATA - количество бит данных (7 или 8), PARITY - количество бит четности (0 или 1), STOP - количество стоп-битов (1 или 2), BAUD - скорость передачи. Результат (время паузы 3,5 символа) будет в миллисекундах.
Т.е. получается что размер одного символа (в битах) - 0.5*(START+DATA+PARITY+STOP)
а не - 0.5*(DATA).
Как все-таки правильно?
Нашел на сайте НИЛ АП
http://rlda.ru/ описание Modbus.
Они утверждают, что 3.5 символа это 14 бит, ну и 1.5 - 6 бит соответственно.
Цитата
Еще не следует забывать, что в спецификации ModBus over Serial line оговорена длительность символа - 11 бит (старт, 8 данных, четность, 1 стоп-бит) и минимальное время паузы тишины (3,5 символа) ограничено 1,75 мс и минимальной паузы между символами (1,5 символа) 0,75мс.
Хорошо что написали об этом.
Как я понял, данные значения желательны и рекомендованны, но не обязательны к применению. И если контроллер на скоростях выше 19200 может отсчитать четко паузу в 3.5 символа, то пусть так и делает.
Или опять таки, для высоких скоростей надо использовать указанные выше значения для пауз?
Если так, то преимущество по скорости 57600 в сравнении к 19200 сходит на нет.
Так как пауза в 1.75 мс - это больше 9 переданных байт на 57600 и получается,
что если средняя длина сообщения или ответа будет 8 байт, то с паузой уже 17 байт.
Т.е. за секунду можно провести по максимуму около 150 актов обмена,
а на скорости в 19200, с паузами в 3.5 символа - около 90.
Как то не шустро получается, а хотелось бы использовать по максимуму.