Baud Rate Test – тест тактового генератора UART и программно-управляемых делителей частоты.
Проверка состоит в выполнении передачи блока данных, сопровождаемой измерением количества переданных байт на скорости 115200 бод за единицу времени. Тест реализован в виде самописца, который визуализирует график изменения частоты во времени. Для устойчивой передачи данных, отклонение скорости не должно превышать ±4%, поэтому границы критичного интервала обозначены красным пунктиром. Для измерения скорости, используется системный таймер персонального компьютера. Предполагается, что он исправен и настроен BIOS на стандартный коэффициент счета.
Для получения частоты битовой синхронизации из входной тактовой частоты, микросхемы UART 82x50 используют два последовательно включенных делителя частоты, один из которых имеет фиксированный коэффициент, равный 16. Второй делитель обеспечивает программируемый коэффициент равный значению, записанному в 16-битовый регистр Baud Rate Divisor. Поле Divisor доступно для редактирования пользователем в нижней части экрана. Результат равен произведению коэффициентов двух рассмотренных делителей, поэтому скорость передачи данных определяется формулой:
S = F/(16*D), где
S = Скорость приема/передачи в бодах.
F = Частота кварцевого резонатора в герцах.
D = Значение регистра Baud Rate Divisor.
При использовании UART со стандартной частотой тактирования в 1.8432MHz, для получения скорости в 115200 бод используется Divisor=1. Коммуникационные устройства, поддерживающие скорости выше 115200 бод, используют частоты тактирования UART, превышающие 1.8432MHz в 2, 4 или 8 раз. Для корректного тестирования таких устройств необходимо вручную увеличить значение поля Divisor в соответствующее количество раз.
|