Как пользоваться
- Введите скорость в бодах. Для порта UART оставьте бит на символ равным 1.
- Выберите формат кадра: биты данных, чётность и стоп-биты (например, 8, Нет, 1 для 8N1).
- Введите, сколько байт нужно передать, чтобы узнать время передачи.
Формулы
- Битовая скорость = бод × бит на символ
- Кадр = 1 стартовый бит + биты данных + бит чётности (0 или 1) + стоп-биты
- Символов в секунду = битовая скорость ÷ бит в кадре
- Эффективность = биты данных ÷ бит в кадре
- Длительность бита = 1 ÷ битовая скорость; длительность символа = кадр ÷ битовая скорость
- Время передачи = число байт ÷ символов в секунду
Пример
9600 бод, 8N1, передаём 1024 байта:
- битовая скорость — 9 600 bit/s; кадр: 1 + 8 + 0 + 1 = 10 бит;
- символов в секунду: 9600 ÷ 10 = 960; эффективность — 80 %;
- бит длится 104,1667 мкс, символ — 1,0417 мс;
- 1024 байта передаются за 1024 ÷ 960 = 1,067 с.
Советы
- Считайте 10 бит на байт для 8N1: 115200 бод — это около 11,5 КБ в секунду.
- Погрешность частоты накапливается в пределах кадра. Приёмник UART подстраивается по каждому стартовому биту, поэтому часы сторон должны совпадать с точностью до нескольких процентов лишь на длине одного кадра.
- Накладные расходы протокола — отдельно. Заголовки пакетов, контрольные суммы и паузы между кадрами снижают реальную скорость ниже этой оценки.